Makefile revision 80ab886d233f514d54c2a6bdeb9fdfd951bd6881
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# CDDL HEADER START
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
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
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# Use is subject to license terms.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# ident "%Z%%M% %I% %E% SMI"
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# lib/libc/sparc/Makefile
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncLIBCBASE=.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncLIBRARY= libc.a
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncLIB_PIC= libc_pic.a
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncVERS= .1
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncCPP= /usr/lib/cpp
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncTARGET_ARCH= sparc
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# objects are grouped by source directory
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# local objects
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncSTRETS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stret1.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stret2.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stret4.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncCRTOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _ftou.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync cerror.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync cerror64.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync hwmuldiv.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncDYNOBJS=
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncFPOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _D_cplx_div.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _D_cplx_div_ix.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _D_cplx_div_rx.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _D_cplx_mul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _F_cplx_div.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _F_cplx_div_ix.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _F_cplx_div_rx.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _F_cplx_mul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_add.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cmpe.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_div.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_div_ix.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_div_rx.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_lr_div.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_lr_div_ix.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_lr_div_rx.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_lr_mul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_cplx_mul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_div.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_dtoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_fcc.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_itoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_lltoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_mul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_neg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_qtod.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_qtoi.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_qtos.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_qtou.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_scl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_set_except.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_sqrt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_stoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_sub.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_ulltoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_utoq.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __quad_mag.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncFPASMOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _Q_get_rp_rd.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpgetmask.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpgetrnd.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpgetsticky.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpsetmask.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpsetrnd.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpsetsticky.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __quad.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncATOMICOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync atomic.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncCOMOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync bcmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync bcopy.o \
7c205843b5f25329b7bac4cb41e4c55a21c7aafevboxsync bzero.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync bsearch.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memccpy.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync qsort.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strtol.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strtoul.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncGENOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _getsp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _xregs_clrptr.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync abs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync alloca.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync cuexit.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ecvt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync errlst.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getctxt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ladd.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lexp10.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync llog10.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lmul.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lock.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lshiftl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lsign.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lsub.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync makectxt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memchr.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memcmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memcpy.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memmove.o \
24713061a674af34286ac48ad1433329cdd404f2vboxsync memset.o \
24713061a674af34286ac48ad1433329cdd404f2vboxsync new_list.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setjmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync siginfolst.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync siglongjmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sparc_data.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strcasecmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strchr.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strcmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strcpy.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strlcpy.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strlen.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strncmp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync strncpy.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync swapctxt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sync_instruction_memory.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# sysobjs that contain large-file interfaces
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncCOMSYSOBJS64= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync creat64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fstat64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fstatvfs64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getdents64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getrlimit64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lseek64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lstat64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync open64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pread64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pwrite64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setrlimit64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stat64.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync statvfs64.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncSYSOBJS64= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync mmap64.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncCOMSYSOBJS= \
7c205843b5f25329b7bac4cb41e4c55a21c7aafevboxsync __clock_timer.o \
7c205843b5f25329b7bac4cb41e4c55a21c7aafevboxsync __fcntl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __getloadavg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __rusagesys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __signotify.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __sigrt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __time.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _lgrp_home_fast.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _lgrpsys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _nfssys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _portfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _pset.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _rename.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _rpcsys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _sigaction.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_accept.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_bind.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_connect.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_getpeername.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_getsockname.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_getsockopt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_listen.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_recv.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_recvfrom.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_recvmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_send.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_sendmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_sendto.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_setsockopt.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_shutdown.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_socket.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _so_socketpair.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _sockconfig.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync access.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync acct.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync acl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync adjtime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync alarm.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync brk.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync chdir.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync chmod.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync chown.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync chroot.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync cladm.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync close.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync creat.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync dup.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync execve.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync exit.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync facl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fchdir.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fchmod.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fchown.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fchroot.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fdsync.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fpathconf.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fstat.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fstatfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fstatvfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getcpuid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getdents.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getegid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync geteuid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getgid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getgroups.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync gethrtime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getitimer.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getpagesizes.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getpid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getpmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getppid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getrlimit.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync getuid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync gtty.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync install_utrap.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ioctl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync kaio.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync kill.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lchown.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync link.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync llseek.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lseek.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync lstat.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync memcntl.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync mincore.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync mkdir.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync mknod.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync mmap.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync modctl.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync mount.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync mprotect.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync munmap.o \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync nice.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ntp_adjtime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ntp_gettime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync open.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync p_online.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pathconf.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pause.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pcsample.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pollsys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pread.o \
7eaaa8a4480370b82ef3735994f986f338fb4df2vboxsync priocntlset.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync processor_bind.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync processor_info.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync profil.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync putmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync putpmsg.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync pwrite.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync read.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync readlink.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync readv.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync resolvepath.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync rmdir.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync seteguid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setgid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setgroups.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setitimer.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setreid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setrlimit.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync setuid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sigaltstk.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sigprocmsk.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sigsendset.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sigsuspend.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stat.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync statfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync statvfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync stty.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync symlink.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sync.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sysconfig.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sysfs.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync sysinfo.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync syslwp.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync times.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ulimit.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync umask.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync umount2.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync unlink.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync utime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync utimes.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync utssys.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync vhangup.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync waitid.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync write.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync writev.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync yield.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncSYSOBJS= \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __clock_gettime.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync __getcontext.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _lwp_mutex_unlock.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync _stack_grow.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync door.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync fork1.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync forkall.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync gettimeofday.o \
e28fd4288ac6c8869454f1917f7712844e32c7e2vboxsync pipe.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync ptrace.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync syscall.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync syssun.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync tls_get_addr.o \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync uadmin.o \
umount.o \
uname.o \
vfork.o
# objects under ../port which contain transitional large file interfaces
PORTGEN64= \
_xftw64.o \
attropen64.o \
ftw64.o \
mkstemp64.o \
nftw64.o \
tell64.o \
truncate64.o
# objects from source under ../port
PORTFP= \
__flt_decim.o \
__flt_rounds.o \
__tbl_10_b.o \
__tbl_10_h.o \
__tbl_10_s.o \
__tbl_2_b.o \
__tbl_2_h.o \
__tbl_2_s.o \
__tbl_fdq.o \
__tbl_tens.o \
__x_power.o \
_base_sup.o \
aconvert.o \
decimal_bin.o \
double_decim.o \
econvert.o \
fconvert.o \
file_decim.o \
finite.o \
fp_data.o \
func_decim.o \
gconvert.o \
hex_bin.o \
ieee_globals.o \
pack_float.o \
sigfpe.o \
string_decim.o \
ashldi3.o \
ashrdi3.o \
cmpdi2.o \
divdi3.o \
floatdidf.o \
floatdisf.o \
lshrdi3.o \
moddi3.o \
muldi3.o \
qdivrem.o \
ucmpdi2.o \
udivdi3.o \
umoddi3.o
PORTGEN= \
_env_data.o \
_ftoll.o \
_ftoull.o \
_xftw.o \
a64l.o \
abort.o \
addsev.o \
assert.o \
atof.o \
atoi.o \
atol.o \
atoll.o \
attropen.o \
atexit.o \
atfork.o \
basename.o \
calloc.o \
catgets.o \
catopen.o \
cfgetispeed.o \
cfgetospeed.o \
cfree.o \
cfsetispeed.o \
cfsetospeed.o \
cftime.o \
clock.o \
closedir.o \
closefrom.o \
confstr.o \
crypt.o \
csetlen.o \
ctime.o \
ctime_r.o \
directio.o \
dirname.o \
div.o \
drand48.o \
dup2.o \
env_data.o \
errno.o \
euclen.o \
event_port.o \
execvp.o \
fattach.o \
fdetach.o \
fdopendir.o \
ffs.o \
fmtmsg.o \
ftime.o \
ftok.o \
ftw.o \
gcvt.o \
getauxv.o \
getcwd.o \
getdate_err.o \
getdtblsize.o \
getenv.o \
getexecname.o \
getgrnam.o \
getgrnam_r.o \
gethostid.o \
gethostname.o \
gethz.o \
getisax.o \
getloadavg.o \
getlogin.o \
getmntent.o \
getnetgrent.o \
getopt.o \
getopt_long.o \
getpagesize.o \
getpw.o \
getpwnam.o \
getpwnam_r.o \
getrusage.o \
getspent.o \
getspent_r.o \
getsubopt.o \
gettxt.o \
getusershell.o \
getut.o \
getutx.o \
getvfsent.o \
getwd.o \
getwidth.o \
getxby_door.o \
gtxt.o \
hsearch.o \
iconv.o \
imaxabs.o \
imaxdiv.o \
index.o \
initgroups.o \
insque.o \
isaexec.o \
isastream.o \
isatty.o \
killpg.o \
l64a.o \
lckpwdf.o \
lconstants.o \
ldivide.o \
lfind.o \
lfmt.o \
lfmt_log.o \
llabs.o \
lldiv.o \
lltostr.o \
localtime.o \
lsearch.o \
madvise.o \
malloc.o \
memalign.o \
mkdev.o \
mkdtemp.o \
mkfifo.o \
mkstemp.o \
mktemp.o \
mlock.o \
mlockall.o \
mon.o \
msync.o \
munlock.o \
munlockall.o \
ndbm.o \
nftw.o \
nlspath_checks.o \
nsparse.o \
nss_common.o \
nss_dbdefs.o \
nss_deffinder.o \
opendir.o \
opt_data.o \
perror.o \
pfmt.o \
pfmt_data.o \
pfmt_print.o \
plock.o \
poll.o \
priocntl.o \
privlib.o \
priv_str_xlate.o \
psiginfo.o \
psignal.o \
pt.o \
putpwent.o \
putspent.o \
raise.o \
rand.o \
random.o \
rctlops.o \
readdir.o \
readdir_r.o \
realpath.o \
reboot.o \
regexpr.o \
rename.o \
rewinddir.o \
rindex.o \
scandir.o \
seekdir.o \
select.o \
select_large_fdset.o \
setlabel.o \
setpriority.o \
settimeofday.o \
sh_locks.o \
sigflag.o \
siglist.o \
sigsend.o \
sigsetops.o \
ssignal.o \
stack.o \
str2sig.o \
strcase_charmap.o \
strcat.o \
strcspn.o \
strdup.o \
strerror.o \
strncat.o \
strlcat.o \
strncasecmp.o \
strpbrk.o \
strrchr.o \
strsignal.o \
strspn.o \
strstr.o \
strtod.o \
strtoimax.o \
strtok.o \
strtok_r.o \
strtoll.o \
strtoull.o \
strtoumax.o \
swab.o \
swapctl.o \
sysconf.o \
syslog.o \
tcdrain.o \
tcflow.o \
tcflush.o \
tcgetattr.o \
tcgetpgrp.o \
tcgetsid.o \
tcsendbreak.o \
tcsetattr.o \
tcsetpgrp.o \
tell.o \
telldir.o \
tfind.o \
time_data.o \
time_gdata.o \
truncate.o \
tsdalloc.o \
tsearch.o \
ttyname.o \
ttyslot.o \
ualarm.o \
ucred.o \
valloc.o \
vlfmt.o \
vpfmt.o \
wait3.o \
wait4.o \
waitpid.o \
walkstack.o \
wdata.o \
xgetwidth.o \
xpg4.o \
xpg6.o
PORTPRINT_W= \
doprnt_w.o
PORTPRINT= \
doprnt.o \
fprintf.o \
printf.o \
snprintf.o \
sprintf.o \
vfprintf.o \
vprintf.o \
vsnprintf.o \
vsprintf.o \
vwprintf.o \
wprintf.o
# c89 variants to support 32-bit size of c89 u/intmax_t (32-bit libc only)
PORTPRINT_C89= \
vfprintf_c89.o \
vprintf_c89.o \
vsnprintf_c89.o \
vsprintf_c89.o \
vwprintf_c89.o
PORTSTDIO_C89= \
vscanf_c89.o \
vwscanf_c89.o
# portable stdio objects that contain large file interfaces.
# Note: fopen64 is a special case, as we build it small.
PORTSTDIO64= \
fopen64.o \
fpos64.o
PORTSTDIO_W= \
doscan_w.o
PORTSTDIO= \
__extensions.o \
_endopen.o \
_filbuf.o \
_findbuf.o \
_flsbuf.o \
_wrtchk.o \
clearerr.o \
ctermid.o \
ctermid_r.o \
cuserid.o \
data.o \
doscan.o \
fdopen.o \
feof.o \
ferror.o \
fgetc.o \
fgets.o \
fileno.o \
flockf.o \
flush.o \
fopen.o \
fpos.o \
fputc.o \
fputs.o \
fread.o \
fseek.o \
fseeko.o \
ftell.o \
ftello.o \
fwrite.o \
getc.o \
getchar.o \
getpass.o \
gets.o \
getw.o \
popen.o \
putc.o \
putchar.o \
puts.o \
putw.o \
rewind.o \
scanf.o \
setbuf.o \
setbuffer.o \
setvbuf.o \
system.o \
tempnam.o \
tmpfile.o \
tmpnam_r.o \
ungetc.o \
mse.o \
vscanf.o \
vwscanf.o \
wscanf.o
PORTI18N= \
__fgetwc_xpg5.o \
__fgetws_xpg5.o \
__fputwc_xpg5.o \
__fputws_xpg5.o \
__ungetwc_xpg5.o \
getwchar.o \
putwchar.o \
putws.o \
strtows.o \
wcstoimax.o \
wcstol.o \
wcstoul.o \
wcswcs.o \
wscasecmp.o \
wscat.o \
wschr.o \
wscmp.o \
wscpy.o \
wscspn.o \
wsdup.o \
wslen.o \
wsncasecmp.o \
wsncat.o \
wsncmp.o \
wsncpy.o \
wspbrk.o \
wsprintf.o \
wsrchr.o \
wsscanf.o \
wsspn.o \
wstod.o \
wstok.o \
wstol.o \
wstoll.o \
wsxfrm.o \
wmemchr.o \
wmemcmp.o \
wmemcpy.o \
wmemmove.o \
wmemset.o \
wcsstr.o \
gettext.o \
gettext_real.o \
gettext_util.o \
gettext_gnu.o \
plural_parser.o \
wdresolve.o \
_ctype.o \
isascii.o \
toascii.o
PORTI18N_COND= \
wcstol_longlong.o \
wcstoul_longlong.o
THREADSOBJS= \
alloc.o \
assfail.o \
cancel.o \
door_calls.o \
pthr_attr.o \
pthr_barrier.o \
pthr_cond.o \
pthr_mutex.o \
pthr_rwlock.o \
pthread.o \
rtsched.o \
rwlock.o \
scalls.o \
sema.o \
sigaction.o \
spawn.o \
synch.o \
tdb_agent.o \
thr.o \
thread_interface.o \
tls.o \
tsd.o
THREADSMACHOBJS= \
machdep.o
THREADSASMOBJS= \
asm_subr.o
UNWINDMACHOBJS= \
unwind.o
UNWINDASMOBJS= \
unwind_frame.o
# objects that implement the transitional large file API
PORTSYS64= \
fstatat64.o \
lockf64.o \
openat64.o
PORTSYS= \
_autofssys.o \
acctctl.o \
bsd_signal.o \
corectl.o \
exacctsys.o \
execl.o \
execle.o \
execv.o \
fcntl.o \
fsmisc.o \
fstatat.o \
fsync.o \
getpeerucred.o \
inst_sync.o \
issetugid.o \
label.o \
libc_link.o \
libc_open.o \
lockf.o \
lwp.o \
lwp_cond.o \
lwp_rwlock.o \
lwp_sigmask.o \
meminfosys.o \
msgsys.o \
nfssys.o \
openat.o \
pgrpsys.o \
posix_sigwait.o \
ppriv.o \
psetsys.o \
rctlsys.o \
sbrk.o \
semsys.o \
set_errno.o \
shmsys.o \
siginterrupt.o \
signal.o \
sigpending.o \
sigstack.o \
tasksys.o \
time.o \
time_util.o \
ucontext.o \
ustat.o \
zone.o
PORTREGEX= \
glob.o \
regcmp.o \
regex.o \
wordexp.o
MOSTOBJS= \
$(STRETS) \
$(CRTOBJS) \
$(DYNOBJS) \
$(FPOBJS) \
$(FPASMOBJS) \
$(ATOMICOBJS) \
$(COMOBJS) \
$(GENOBJS) \
$(PORTFP) \
$(PORTGEN) \
$(PORTGEN64) \
$(PORTI18N) \
$(PORTI18N_COND) \
$(PORTPRINT) \
$(PORTPRINT_C89) \
$(PORTPRINT_W) \
$(PORTREGEX) \
$(PORTSTDIO) \
$(PORTSTDIO64) \
$(PORTSTDIO_C89) \
$(PORTSTDIO_W) \
$(PORTSYS) \
$(PORTSYS64) \
$(THREADSOBJS) \
$(THREADSMACHOBJS) \
$(THREADSASMOBJS) \
$(UNWINDMACHOBJS) \
$(UNWINDASMOBJS) \
$(COMSYSOBJS) \
$(SYSOBJS) \
$(COMSYSOBJS64) \
$(SYSOBJS64)
TRACEOBJS= \
plockstat.o
# NOTE: libc.so.1 must be linked with the minimal crti.o and crtn.o
# modules whose source is provided in the $(SRC)/lib/common directory.
# This must be done because otherwise the Sun C compiler would insert
# its own versions of these modules and those versions contain code
# to call out to C++ initialization functions. Such C++ initialization
# functions can call back into libc before thread initialization is
# complete and this leads to segmentation violations and other problems.
# Since libc contains no C++ code, linking with the minimal crti.o and
# crtn.o modules is safe and avoids the problems described above.
OBJECTS= $(CRTI) $(MOSTOBJS) $(CRTN)
CRTSRCS= ../../common/sparc
# include common library definitions
include ../../Makefile.lib
# NOTE: libc_i18n.a will be part of libc.so.1. Therefore, the compilation
# conditions such as the settings of CFLAGS and CPPFLAGS for the libc_i18n stuff
# need to be compatible with the ones for the libc stuff. Whenever the changes
# that affect the compilation conditions of libc happened, those for libc_i18n
# also need to be updated.
CFLAGS += $(CCVERBOSE)
# This is necessary to avoid problems with calling _ex_unwind().
# We probably don't want any inlining anyway.
CFLAGS += -xinline=
# Setting THREAD_DEBUG = -DTHREAD_DEBUG (make THREAD_DEBUG=-DTHREAD_DEBUG ...)
# enables ASSERT() checking in the threads portion of the library.
# This is automatically enabled for DEBUG builds, not for non-debug builds.
THREAD_DEBUG =
$(NOT_RELEASE_BUILD)THREAD_DEBUG = -DTHREAD_DEBUG
CFLAGS += $(THREAD_DEBUG)
ALTPICS= $(TRACEOBJS:%=pics/%)
$(DYNLIB) := PICS += $(ROOTFS_LIBDIR)/libc_i18n.a
$(DYNLIB) := BUILD.SO = $(LD) -o $@ -G $(DYNFLAGS) $(PICS) $(ALTPICS)
MAPDIR= ../spec/sparc
MAPFILE= $(MAPDIR)/mapfile
CFLAGS += $(EXTN_CFLAGS)
CPPFLAGS= -D_REENTRANT -Dsparc $(EXTN_CPPFLAGS) \
-I$(LIBCBASE)/inc -I../inc $(CPPFLAGS.master)
ASFLAGS= -K pic -P -D__STDC__ -D_ASM $(CPPFLAGS) -xarch=v8plus
# Inform the run-time linker about libc specialized initialization
RTLDINFO = -z rtldinfo=tls_rtldinfo
DYNFLAGS += -e __rtboot -M $(MAPFILE) $(RTLDINFO)
DYNFLAGS += $(EXTN_DYNFLAGS)
BUILD.s= $(AS) $(ASFLAGS) $< -o $@
# Override this top level flag so the compiler builds in its native
# C99 mode. This has been enabled to support the complex arithmetic
# added to libc.
C99MODE= $(C99_ENABLE)
# libc method of building an archive
BUILD.AR= $(RM) $@ ; \
$(AR) q $@ `$(LORDER) $(MOSTOBJS:%=$(DIR)/%)| $(TSORT)`
# extra files for the clean target
CLEANFILES= \
../port/gen/errlst.c \
../port/gen/new_list.c \
assym.h \
genassym \
crt/_rtld.s \
crt/_rtbootld.s \
pics/_rtbootld.o \
pics/crti.o \
pics/crtn.o \
pics/values-Xa.o \
$(ALTPICS)
CLOBBERFILES += $(MAPFILE) $(LIB_PIC)
# list of C source for lint
SRCS= \
$(ATOMICOBJS:%.o=$(SRC)/common/atomic/%.c) \
$(COMOBJS:%.o=$(SRC)/common/util/%.c) \
$(PORTFP:%.o=../port/fp/%.c) \
$(PORTGEN:%.o=../port/gen/%.c) \
$(PORTI18N:%.o=../port/i18n/%.c) \
$(PORTPRINT:%.o=../port/print/%.c) \
$(PORTREGEX:%.o=../port/regex/%.c) \
$(PORTSTDIO:%.o=../port/stdio/%.c) \
$(PORTSYS:%.o=../port/sys/%.c) \
$(THREADSOBJS:%.o=../port/threads/%.c) \
$(THREADSMACHOBJS:%.o=../$(MACH)/threads/%.c) \
$(UNWINDMACHOBJS:%.o=../port/unwind/%.c) \
$(FPOBJS:%.o=../$(MACH)/fp/%.c) \
$(LIBCBASE)/crt/_ftou.c \
$(LIBCBASE)/gen/_xregs_clrptr.c \
$(LIBCBASE)/gen/ecvt.c \
$(LIBCBASE)/gen/getctxt.c \
$(LIBCBASE)/gen/lexp10.c \
$(LIBCBASE)/gen/llog10.c \
$(LIBCBASE)/gen/lmul.c \
$(LIBCBASE)/gen/makectxt.c \
$(LIBCBASE)/gen/siginfolst.c \
$(LIBCBASE)/gen/siglongjmp.c \
$(LIBCBASE)/gen/swapctxt.c \
$(LIBCBASE)/sys/ptrace.c
# conditional assignments
$(DYNLIB) $(LIB_PIC) := DYNOBJS = _rtbootld.o
$(DYNLIB) := CRTI = crti.o values-Xa.o
$(DYNLIB) := CRTN = crtn.o
$(DYNLIB): $(MAPFILE)
$(MAPFILE):
@cd $(MAPDIR); $(MAKE) mapfile
# Files which need the threads .il inline template
TIL= \
alloc.o \
assfail.o \
atexit.o \
atfork.o \
cancel.o \
door_calls.o \
errno.o \
getctxt.o \
lwp.o \
machdep.o \
pthr_attr.o \
pthr_barrier.o \
pthr_cond.o \
pthr_mutex.o \
pthr_rwlock.o \
pthread.o \
rand.o \
rtsched.o \
rwlock.o \
scalls.o \
sema.o \
sigaction.o \
spawn.o \
stack.o \
swapctxt.o \
synch.o \
tdb_agent.o \
thr.o \
thread_interface.o \
tls.o \
tsd.o \
unwind.o
$(TIL:%=pics/%) := CFLAGS += $(LIBCBASE)/threads/sparc.il
# special kludge for inlines with 'cas':
pics/synch.o pics/lwp.o := sparc_CFLAGS += -_gcc=-Wa,-xarch=v8plus
# Files in port/fp subdirectory that need base.il inline template
IL= \
__flt_decim.o \
decimal_bin.o
$(IL:%=pics/%) := CFLAGS += $(LIBCBASE)/fp/base.il
# Files in fp subdirectory which need __quad.il inline template
QIL= \
_Q_add.o \
_Q_cmp.o \
_Q_cmpe.o \
_Q_div.o \
_Q_dtoq.o \
_Q_fcc.o \
_Q_mul.o \
_Q_qtod.o \
_Q_qtoi.o \
_Q_qtos.o \
_Q_qtou.o \
_Q_sqrt.o \
_Q_stoq.o \
_Q_sub.o
$(QIL:%=pics/%) := CFLAGS += ../$(MACH)/fp/__quad.il
pics/_Q%.o := sparc_COPTFLAG = -xO4 -dalign
pics/__quad%.o := sparc_COPTFLAG = -xO4 -dalign
# large-file-aware components that should be built large
$(COMSYSOBJS64:%=pics/%) := \
CPPFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$(SYSOBJS64:%=pics/%) := \
CPPFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$(PORTGEN64:%=pics/%) := \
CPPFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$(PORTSTDIO64:%=pics/%) := \
CPPFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$(PORTSYS64:%=pics/%) := \
CPPFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$(PORTSTDIO_W:%=pics/%) := \
CPPFLAGS += -D_WIDE
$(PORTPRINT_W:%=pics/%) := \
CPPFLAGS += -D_WIDE
# printf/scanf functions to support c89-sized intmax_t variables
$(PORTPRINT_C89:%=pics/%) := \
CPPFLAGS += -D_C89_INTMAX32
$(PORTSTDIO_C89:%=pics/%) := \
CPPFLAGS += -D_C89_INTMAX32
$(PORTI18N_COND:%=pics/%) := \
CPPFLAGS += -D_WCS_LONGLONG
# Files which need extra optimization
pics/getenv.o := sparc_COPTFLAG = -xO4
.KEEP_STATE:
all: $(LIBS) $(LIB_PIC)
lint := CPPFLAGS += -I../$(MACH)/fp
lint := CPPFLAGS += -D_MSE_INT_H -D_LCONV_C99
lint := LINTFLAGS += -mn
lint:
@echo $(LINT.c) ... $(LDLIBS)
@$(LINT.c) $(SRCS) $(LDLIBS)
# these aren't listed as $(PICS), so we need to force CTF
pics/values-Xa.o := CFLAGS += $(CTF_FLAGS)
pics/values-Xa.o := CTFCONVERT_POST = $(CTFCONVERT_O)
$(LINTLIB):= SRCS=../port/llib-lc
$(LINTLIB):= CPPFLAGS += -D_MSE_INT_H
$(LINTLIB):= LINTFLAGS=-nvx
# object files that depend on inline template
$(TIL:%=pics/%): $(LIBCBASE)/threads/sparc.il
$(IL:%=pics/%): $(LIBCBASE)/fp/base.il
$(QIL:%=pics/%): ../$(MACH)/fp/__quad.il
# include common libc targets
include ../Makefile.targ
# We need to strip out all CTF and DOF data from the static library
$(LIB_PIC) := DIR = pics
$(LIB_PIC): pics $$(PICS)
$(BUILD.AR)
$(MCS) -d -n .SUNW_ctf $@ > /dev/null 2>&1
$(MCS) -d -n .SUNW_dof $@ > /dev/null 2>&1
$(AR) -ts $@ > /dev/null
$(POST_PROCESS_A)
# special cases
$(STRETS:%=pics/%): crt/stret.s
$(AS) $(ASFLAGS) -DSTRET$(@F:stret%.o=%) crt/stret.s -o $@
$(POST_PROCESS_O)
crt/_rtbootld.s: crt/_rtboot.s crt/_rtld.c
$(CC) $(CPPFLAGS) $(CTF_FLAGS) -O -S -K pic \
crt/_rtld.c -o crt/_rtld.s
$(CAT) crt/_rtboot.s crt/_rtld.s > $@
$(RM) crt/_rtld.s
# partially built from C source
pics/_rtbootld.o: crt/_rtbootld.s
$(AS) $(ASFLAGS) crt/_rtbootld.s -o $@
$(CTFCONVERT_O)
ASSYMDEP_OBJS= \
_lwp_mutex_unlock.o \
_stack_grow.o \
asm_subr.o \
tls_get_addr.o \
unwind_frame.o \
vfork.o
$(ASSYMDEP_OBJS:%=pics/%) := CPPFLAGS += -I.
$(ASSYMDEP_OBJS:%=pics/%): assym.h
# assym.h build rules
GENASSYM_C = ../$(MACH)/genassym.c
# XXX A hack. Perhaps this should be 'CPPFLAGS.native' and
# live in Makefile.master
CPPFLAGS.genassym = \
$(ENVCPPFLAGS1) $(ENVCPPFLAGS2) $(ENVCPPFLAGS3) $(ENVCPPFLAGS4)
genassym: $(GENASSYM_C)
$(NATIVECC) -I$(LIBCBASE)/inc -I../inc \
$(CPPFLAGS.genassym) -o $@ $(GENASSYM_C)
OFFSETS = ../$(MACH)/offsets.in
assym.h: $(OFFSETS) genassym
$(OFFSETS_CREATE) <$(OFFSETS) >$@
./genassym >>$@
# derived C source and related explicit dependencies
../port/gen/errlst.c + \
../port/gen/new_list.c: ../port/gen/errlist ../port/gen/errlist.awk
cd ../port/gen; pwd; $(AWK) -f errlist.awk < errlist
pics/errlst.o: ../port/gen/errlst.c
pics/new_list.o: ../port/gen/new_list.c