Makefile revision d09832051bb4b41ce2b3202c09fceedc089678af
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# CDDL HEADER START
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# The contents of this file are subject to the terms of the
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# Common Development and Distribution License (the "License").
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# You may not use this file except in compliance with the License.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# See the License for the specific language governing permissions
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# and limitations under the License.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# When distributing Covered Code, include this CDDL HEADER in each
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# If applicable, add the following below this CDDL HEADER, with the
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# fields enclosed by brackets "[]" replaced with your own identifying
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# information: Portions Copyright [yyyy] [name of copyright owner]
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# CDDL HEADER END
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# Use is subject to license terms.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# objects are grouped by source directory
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# local objects
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# sysobjs that contain large-file interfaces
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# objects under ../port which contain transitional large file interfaces
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# objects from source under ../port
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# c89 variants to support 32-bit size of c89 u/intmax_t (32-bit libc only)
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# portable stdio objects that contain large file interfaces.
ead1f93ee620d7580f7e53350fe5a884fc4f158aLiane Praza# Note: fopen64 is a special case, as we build it small.
AIOOBJS= \
aio.o \
RTOBJS= \
mqueue.o \
sched.o \
sem.o \
shm.o \
TPOOLOBJS= \
THREADSOBJS= \
alloc.o \
cancel.o \
rwlock.o \
scalls.o \
sema.o \
spawn.o \
synch.o \
thr.o \
tls.o \
UNICODEOBJS= \
PORTSYS64= \
PORTSYS= \
execl.o \
execle.o \
execv.o \
fsmisc.o \
label.o \
lockf.o \
lwp.o \
msgsys.o \
nfssys.o \
openat.o \
ppriv.o \
sbrk.o \
semsys.o \
shmsys.o \
sidsys.o \
signal.o \
time.o \
ustat.o \
PORTREGEX= \
glob.o \
regcmp.o \
regex.o \
MOSTOBJS= \
$(STRETS) \
$(CRTOBJS) \
$(DYNOBJS) \
$(FPOBJS) \
$(FPASMOBJS) \
$(ATOMICOBJS) \
$(XATTROBJS) \
$(COMOBJS) \
$(DTRACEOBJS) \
$(GENOBJS) \
$(PORTFP) \
$(PORTGEN) \
$(PORTGEN64) \
$(PORTI18N) \
$(PORTI18N_COND) \
$(PORTPRINT) \
$(PORTPRINT_C89) \
$(PORTPRINT_W) \
$(PORTREGEX) \
$(PORTSTDIO) \
$(PORTSTDIO64) \
$(PORTSTDIO_C89) \
$(PORTSTDIO_W) \
$(PORTSYS) \
$(PORTSYS64) \
$(AIOOBJS) \
$(RTOBJS) \
$(TPOOLOBJS) \
$(THREADSOBJS) \
$(THREADSMACHOBJS) \
$(THREADSASMOBJS) \
$(UNICODEOBJS) \
$(UNWINDMACHOBJS) \
$(UNWINDASMOBJS) \
$(COMSYSOBJS) \
$(SYSOBJS) \
$(COMSYSOBJS64) \
$(SYSOBJS64) \
$(VALUES)
TRACEOBJS= \
# Since libc contains no C++ code, linking with the minimal crti.o and
# crtn.o modules is safe and avoids the problems described above.
# NOTE: libc_i18n.a will be part of libc.so.1. Therefore, the compilation
CLEANFILES= \
assym.h \
genassym \
$(ALTPICS)
SRCS= \
$(THREADSOBJS:%.o=../port/threads/%.c) \
$(UNWINDMACHOBJS:%.o=../port/unwind/%.c) \
TIL= \
aio.o \
alloc.o \
atexit.o \
atfork.o \
cancel.o \
errno.o \
lwp.o \
ma.o \
rand.o \
rwlock.o \
scalls.o \
sched.o \
sema.o \
spawn.o \
stack.o \
synch.o \
thr.o \
tls.o \
tsd.o \
IL= \
# Files in fp subdirectory which need __quad.il inline template
QIL= \
_Q_add.o \
_Q_cmp.o \
_Q_div.o \
_Q_fcc.o \
_Q_mul.o \
$(COMSYSOBJS64:%=pics/%) := \
$(PORTSTDIO64:%=pics/%) := \
$(PORTSTDIO_W:%=pics/%) := \
$(PORTPRINT_W:%=pics/%) := \
$(PORTPRINT_C89:%=pics/%) := \
$(PORTSTDIO_C89:%=pics/%) := \
$(PORTI18N_COND:%=pics/%) := \
lint:
$(BUILD.AR)
$(CTFCONVERT_O)
# assym.h build rules
# XXX A hack. Perhaps this should be 'CPPFLAGS.native' and
# live in Makefile.master
./genassym >>$@