1113 CERRWARN += -_gcc=-Wno-address
1114
1115 # Setting THREAD_DEBUG = -DTHREAD_DEBUG (make THREAD_DEBUG=-DTHREAD_DEBUG ...)
1116 # enables ASSERT() checking in the threads portion of the library.
1117 # This is automatically enabled for DEBUG builds, not for non-debug builds.
1118 THREAD_DEBUG =
1119 $(NOT_RELEASE_BUILD)THREAD_DEBUG = -DTHREAD_DEBUG
1120
1121 # Make string literals read-only to save memory.
1122 CFLAGS += $(XSTRCONST)
1123
1124 ALTPICS= $(TRACEOBJS:%=pics/%)
1125
1126 $(DYNLIB) := BUILD.SO = $(LD) -o $@ -G $(DYNFLAGS) $(PICS) $(ALTPICS) $(EXTPICS)
1127
1128 MAPFILES = $(LIBCDIR)/port/mapfile-vers
1129
1130 CFLAGS += $(EXTN_CFLAGS)
1131 CPPFLAGS= -D_REENTRANT -Dsparc $(EXTN_CPPFLAGS) $(THREAD_DEBUG) \
1132 -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc $(CPPFLAGS.master)
1133 ASFLAGS= $(EXTN_ASFLAGS) -K pic -P -D__STDC__ -D_ASM $(CPPFLAGS) $(sparc_AS_XARCH)
1134
1135 # As a favor to the dtrace syscall provider, libc still calls the
1136 # old syscall traps that have been obsoleted by the *at() interfaces.
1137 # Delete this to compile libc using only the new *at() system call traps
1138 CPPFLAGS += -D_RETAIN_OLD_SYSCALLS
1139
1140 # Inform the run-time linker about libc specialized initialization
1141 RTLDINFO = -z rtldinfo=tls_rtldinfo
1142 DYNFLAGS += $(RTLDINFO)
1143
1144 # Force libc's internal references to be resolved immediately upon loading
1145 # in order to avoid critical region problems. Since almost all libc symbols
1146 # are marked 'protected' in the mapfiles, this is a minimal set (15 to 20).
1147 DYNFLAGS += -znow
1148
1149 DYNFLAGS += -e __rtboot
1150 DYNFLAGS += $(EXTN_DYNFLAGS)
1151
1152 # Inform the kernel about the initial DTrace area (in case
1153 # libc is being used as the interpreter / runtime linker).
1365 $(QIL:%=pics/%): $(LIBCDIR)/$(MACH)/fp/__quad.il
1366
1367 # include common libc targets
1368 include $(LIBCDIR)/Makefile.targ
1369
1370 # We need to strip out all CTF and DOF data from the static library
1371 $(LIB_PIC) := DIR = pics
1372 $(LIB_PIC): pics $$(PICS)
1373 $(BUILD.AR)
1374 $(MCS) -d -n .SUNW_ctf $@ > /dev/null 2>&1
1375 $(MCS) -d -n .SUNW_dof $@ > /dev/null 2>&1
1376 $(AR) -ts $@ > /dev/null
1377 $(POST_PROCESS_A)
1378
1379 # special cases
1380 $(STRETS:%=pics/%): $(LIBCBASE)/crt/stret.s
1381 $(AS) $(ASFLAGS) -DSTRET$(@F:stret%.o=%) $(LIBCBASE)/crt/stret.s -o $@
1382 $(POST_PROCESS_O)
1383
1384 $(LIBCBASE)/crt/_rtbootld.s: $(LIBCBASE)/crt/_rtboot.s $(LIBCBASE)/crt/_rtld.c
1385 $(CC) $(CPPFLAGS) $(CTF_FLAGS) -O -S -K pic \
1386 $(LIBCBASE)/crt/_rtld.c -o $(LIBCBASE)/crt/_rtld.s
1387 $(CAT) $(LIBCBASE)/crt/_rtboot.s $(LIBCBASE)/crt/_rtld.s > $@
1388 $(RM) $(LIBCBASE)/crt/_rtld.s
1389
1390 # partially built from C source
1391 pics/_rtbootld.o: $(LIBCBASE)/crt/_rtbootld.s
1392 $(AS) $(ASFLAGS) $(LIBCBASE)/crt/_rtbootld.s -o $@
1393 $(CTFCONVERT_O)
1394
1395 ASSYMDEP_OBJS= \
1396 _lwp_mutex_unlock.o \
1397 _stack_grow.o \
1398 asm_subr.o \
1399 setjmp.o \
1400 smt_pause.o \
1401 tls_get_addr.o \
1402 unwind_frame.o \
1403 vforkx.o
1404
1405 $(ASSYMDEP_OBJS:%=pics/%) := CPPFLAGS += -I.
|
1113 CERRWARN += -_gcc=-Wno-address
1114
1115 # Setting THREAD_DEBUG = -DTHREAD_DEBUG (make THREAD_DEBUG=-DTHREAD_DEBUG ...)
1116 # enables ASSERT() checking in the threads portion of the library.
1117 # This is automatically enabled for DEBUG builds, not for non-debug builds.
1118 THREAD_DEBUG =
1119 $(NOT_RELEASE_BUILD)THREAD_DEBUG = -DTHREAD_DEBUG
1120
1121 # Make string literals read-only to save memory.
1122 CFLAGS += $(XSTRCONST)
1123
1124 ALTPICS= $(TRACEOBJS:%=pics/%)
1125
1126 $(DYNLIB) := BUILD.SO = $(LD) -o $@ -G $(DYNFLAGS) $(PICS) $(ALTPICS) $(EXTPICS)
1127
1128 MAPFILES = $(LIBCDIR)/port/mapfile-vers
1129
1130 CFLAGS += $(EXTN_CFLAGS)
1131 CPPFLAGS= -D_REENTRANT -Dsparc $(EXTN_CPPFLAGS) $(THREAD_DEBUG) \
1132 -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc $(CPPFLAGS.master)
1133 ASFLAGS= $(EXTN_ASFLAGS) $(AS_PICFLAGS) -P -D__STDC__ -D_ASM $(CPPFLAGS) $(sparc_AS_XARCH)
1134
1135 # As a favor to the dtrace syscall provider, libc still calls the
1136 # old syscall traps that have been obsoleted by the *at() interfaces.
1137 # Delete this to compile libc using only the new *at() system call traps
1138 CPPFLAGS += -D_RETAIN_OLD_SYSCALLS
1139
1140 # Inform the run-time linker about libc specialized initialization
1141 RTLDINFO = -z rtldinfo=tls_rtldinfo
1142 DYNFLAGS += $(RTLDINFO)
1143
1144 # Force libc's internal references to be resolved immediately upon loading
1145 # in order to avoid critical region problems. Since almost all libc symbols
1146 # are marked 'protected' in the mapfiles, this is a minimal set (15 to 20).
1147 DYNFLAGS += -znow
1148
1149 DYNFLAGS += -e __rtboot
1150 DYNFLAGS += $(EXTN_DYNFLAGS)
1151
1152 # Inform the kernel about the initial DTrace area (in case
1153 # libc is being used as the interpreter / runtime linker).
1365 $(QIL:%=pics/%): $(LIBCDIR)/$(MACH)/fp/__quad.il
1366
1367 # include common libc targets
1368 include $(LIBCDIR)/Makefile.targ
1369
1370 # We need to strip out all CTF and DOF data from the static library
1371 $(LIB_PIC) := DIR = pics
1372 $(LIB_PIC): pics $$(PICS)
1373 $(BUILD.AR)
1374 $(MCS) -d -n .SUNW_ctf $@ > /dev/null 2>&1
1375 $(MCS) -d -n .SUNW_dof $@ > /dev/null 2>&1
1376 $(AR) -ts $@ > /dev/null
1377 $(POST_PROCESS_A)
1378
1379 # special cases
1380 $(STRETS:%=pics/%): $(LIBCBASE)/crt/stret.s
1381 $(AS) $(ASFLAGS) -DSTRET$(@F:stret%.o=%) $(LIBCBASE)/crt/stret.s -o $@
1382 $(POST_PROCESS_O)
1383
1384 $(LIBCBASE)/crt/_rtbootld.s: $(LIBCBASE)/crt/_rtboot.s $(LIBCBASE)/crt/_rtld.c
1385 $(CC) $(CPPFLAGS) $(CTF_FLAGS) -O -S $(C_PICFLAGS) \
1386 $(LIBCBASE)/crt/_rtld.c -o $(LIBCBASE)/crt/_rtld.s
1387 $(CAT) $(LIBCBASE)/crt/_rtboot.s $(LIBCBASE)/crt/_rtld.s > $@
1388 $(RM) $(LIBCBASE)/crt/_rtld.s
1389
1390 # partially built from C source
1391 pics/_rtbootld.o: $(LIBCBASE)/crt/_rtbootld.s
1392 $(AS) $(ASFLAGS) $(LIBCBASE)/crt/_rtbootld.s -o $@
1393 $(CTFCONVERT_O)
1394
1395 ASSYMDEP_OBJS= \
1396 _lwp_mutex_unlock.o \
1397 _stack_grow.o \
1398 asm_subr.o \
1399 setjmp.o \
1400 smt_pause.o \
1401 tls_get_addr.o \
1402 unwind_frame.o \
1403 vforkx.o
1404
1405 $(ASSYMDEP_OBJS:%=pics/%) := CPPFLAGS += -I.
|