[383a00]: src / runtime / Config.ppc-darwin Maximize Restore History

Download this file

Config.ppc-darwin    48 lines (36 with data), 1.6 kB

# -*- makefile -*-
CFLAGS = -Dppc -g -Wall -O2 -no-cpp-precomp
OS_SRC = bsd-os.c os-common.c ppc-darwin-os.c ppc-darwin-dlshim.c ppc-darwin-langinfo.c
OS_LIBS = -lSystem -lc -lm

# Avoid the gcc 3.3 prerelease tarpit of death!
CC = gcc3

ASSEM_SRC = ppc-assem.S ldso-stubs.S
ARCH_SRC = ppc-arch.c

CPP = cpp -no-cpp-precomp

# KLUDGE: in OS X 10.3, Apple started putting the heap right where we
# expect our read-only space mapped. This hack causes the linker to
# place a zero-fill-on-demand segment in the same place and size as
# read-only-space, which is the only thing capable of keeping malloc
# out of this range."
#
# FIXME: "-Wl,-segaddr,SBCLRO,0x1000000" is output from
# ppc-darwin-mkrospace (it depends on READ_ONLY_SPACE I believe) but it
# is hard-coded here!
OS_LINK_FLAGS = -dynamic -Wl,-segaddr,SBCLRO,0x1000000 -Wl,-seg1addr,0x5000000 $(if $(AFTER_GROVEL_HEADERS),ppc-darwin-rospace.o)

GC_SRC= cheneygc.c

CLEAN_FILES += ppc-darwin-mkrospace

ppc-darwin-mkrospace: ppc-darwin-mkrospace.c
	$(CC) -o $@ $<

ppc-darwin-rospace.o: ppc-darwin-mkrospace
	./ppc-darwin-mkrospace

.PHONY: after-grovel-headers

# Rebuild the sbcl runtime to avoid Panther placing the heap where
# it wants read only space (in the first 32 megabytes, where it
# can be absolute-branched to with BA.)  Must be done after 
# grovel-headers, because Apple's nm is broken.
after-grovel-headers: ppc-darwin-rospace.o
	rm -f sbcl
	$(GNUMAKE) sbcl AFTER_GROVEL_HEADERS=1

# Fortunatly make-target-1.sh does a make clean all the time.
# Otherwise we would have to make sure that sbcl gets rebuilt without
# the readonlyspace hack before groveling headers again.