[plain text]
RC_OS = macos
OFLAG = -O
LEGACY = -D_MACH_I386_THREAD_STATUS_FPSTATE_LEGACY_FIELD_NAMES_ \
-D_ARCHITECTURE_I386_FPU_FPSTATE_LEGACY_FIELD_NAMES_
KERN = -fno-builtin -finline -fno-keep-inline-functions -fsigned-bitfields \
-force_cpusubtype_ALL -msoft-float -nostdinc \
-I$(NEXT_ROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders/libsa \
-I$(NEXT_ROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders \
-I$(NEXT_ROOT)/System/Library/Frameworks/Kernel.framework/Headers/libsa \
-I$(NEXT_ROOT)/System/Library/Frameworks/Kernel.framework/Headers/bsd \
-I$(NEXT_ROOT)/System/Library/Frameworks/Kernel.framework/Headers \
-DKERNEL -DKERNEL_PRIVATE -DAPPLE -DNeXT -DLIBSA_PRIVATE
ifeq "macos" "$(RC_OS)"
X_CFLAGS := $(shell if [ "$(RC_RELEASE)" != "Beaker" ] && \
[ "$(RC_RELEASE)" != "Bunsen" ] && \
[ "$(RC_RELEASE)" != "Gonzo" ] && \
[ "$(RC_RELEASE)" != "Kodiak" ]; then \
echo -Wno-long-double -no-cpp-precomp -fno-builtin-round; \
fi; )
endif
USE_DEPENDENCY_FILE := $(shell if [ "$(notdir $(CC))" != "mwccppc" ] && \
[ "$(RC_XBS)" != "YES" ]; then \
echo YES ; else echo NO ; \
fi; )
ifeq "mwccppc" "$(notdir $(CC))"
CFLAGS = $(OFLAG) -g -gccinc -I$(SRCROOT)/../include $(LEGACY)
else
CFLAGS = $(OFLAG) -g -I$(SRCROOT)/../include -Wall $(X_CFLAGS) $(LEGACY)
endif
ifneq "" "$(wildcard /bin/mkdirs)"
MKDIRS = /bin/mkdirs
else
MKDIRS = /bin/mkdir -p
endif
SRCROOT = .
SYMROOT = .
OBJROOT = .
OFILE_DIRS = $(OBJROOT)/static_obj $(OBJROOT)/dynamic_obj \
$(OBJROOT)/profile_obj $(OBJROOT)/shlib_obj \
$(OBJROOT)/static64_obj $(OBJROOT)/dynamic64_obj \
$(OBJROOT)/profile64_obj $(OBJROOT)/static_kld_obj
OFILE_DIR = $(OBJROOT)
VPATH = $(OFILE_DIR)
CFILES = allocate.c errors.c arch.c execute.c bytesex.c round.c hppa.c \
swap_headers.c reloc.c version_number.c get_toc_byte_sex.c \
best_arch.c fatals.c arch_usage.c ofile.c ofile_error.c print.c \
set_arch_flag_name.c seg_addr_table.c dylib_table.c \
breakout.c writeout.c checkout.c fatal_arch.c ofile_get_word.c \
vm_flush_cache.c hash_string.c dylib_roots.c guess_short_name.c \
SymLoc.c get_arch_from_host.c crc32.c macosx_deployment_target.c \
symbol_list.c unix_standard_mode.c
OBJS = $(CFILES:.c=.o)
INSTALL_FILES = $(CFILES) Makefile notes
all: $(OFILE_DIRS) $(SYMROOT) static dynamic profile \
static64 dynamic64 profile64 static_kld $(RC_OS)
teflon macos:
nextstep: shlib
static: $(OBJROOT)/static_obj
@if [ $(SRCROOT) = . ]; \
then \
cd static_obj; \
$(MAKE) -f ../Makefile libstuff.a \
PRODUCT=libstuff.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-static" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/static_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff.a \
PRODUCT=libstuff.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/static_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-static" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
static_kld: $(OBJROOT)/static_kld_obj
@if [ $(SRCROOT) = . ]; \
then \
cd static_kld_obj; \
$(MAKE) -f ../Makefile libstuff_kld.a \
PRODUCT=libstuff_kld.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-static -DRLD -DSA_RLD $(KERN)" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/static_kld_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff_kld.a \
PRODUCT=libstuff_kld.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/static_kld_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-static -DRLD -DSA_RLD $(KERN)" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
static64: $(OBJROOT)/static64_obj
@if [ $(SRCROOT) = . ]; \
then \
cd static64_obj; \
$(MAKE) -f ../Makefile libstuff64.a \
PRODUCT=libstuff64.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-static -DARCH64" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/static64_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff64.a \
PRODUCT=libstuff64.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/static64_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-static -DARCH64" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
dynamic: $(OBJROOT)/dynamic_obj
@if [ $(SRCROOT) = . ]; \
then \
cd dynamic_obj; \
$(MAKE) -f ../Makefile libstuff.dylib \
PRODUCT=libstuff.dylib \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-dynamic" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/dynamic_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff.dylib \
PRODUCT=libstuff.dylib \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/dynamic_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-dynamic" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
dynamic64: $(OBJROOT)/dynamic64_obj
@if [ $(SRCROOT) = . ]; \
then \
cd dynamic64_obj; \
$(MAKE) -f ../Makefile libstuff64.dylib \
PRODUCT=libstuff64.dylib \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-dynamic -DARCH64" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/dynamic64_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff64.dylib \
PRODUCT=libstuff64.dylib \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/dynamic64_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-dynamic -DARCH64" \
OFLAG="$(OFLAG)" \
CFILES="$(CFILES)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
profile: $(OBJROOT)/profile_obj
@if [ $(SRCROOT) = . ]; \
then \
cd profile_obj; \
$(MAKE) -f ../Makefile libstuff_p.a \
PRODUCT=libstuff_p.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-dynamic -pg" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/profile_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff_p.a \
PRODUCT=libstuff_p.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/profile_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-dynamic -pg" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
profile64: $(OBJROOT)/profile64_obj
@if [ $(SRCROOT) = . ]; \
then \
cd profile64_obj; \
$(MAKE) -f ../Makefile libstuff64_p.a \
PRODUCT=libstuff64_p.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-dynamic -pg -DARCH64" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/profile64_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff64_p.a \
PRODUCT=libstuff64_p.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/profile64_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-dynamic -pg -DARCH64" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
shlib: $(OBJROOT)/shlib_obj
@if [ $(SRCROOT) = . ]; \
then \
cd shlib_obj; \
$(MAKE) -f ../Makefile libstuff_s.a \
PRODUCT=libstuff_s.a \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-static -DSHLIB -I/LocalDeveloper/Headers/libsys" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
else \
cd $(OBJROOT)/shlib_obj; \
$(MAKE) -f $(SRCROOT)/Makefile libstuff_s.a \
PRODUCT=libstuff_s.a \
VPATH=$(SRCROOT) \
OFILE_DIR=$(OBJROOT)/shlib_obj \
SRCROOT=$(SRCROOT) \
SYMROOT=$(SYMROOT) \
COPTS="-static -DSHLIB -I/LocalDeveloper/Headers/libsys" \
OFLAG="$(OFLAG)" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)"; \
fi
$(PRODUCT): $(OFILE_DIR) $(SYMROOT) $(OBJS)
libtool -static -o $(SYMROOT)/$(PRODUCT) $(OBJS)
ifeq "NO" "$(USE_DEPENDENCY_FILE)"
.c.o:
$(CC) $(CFLAGS) $(RC_CFLAGS) $(COPTS) -c -o $(OFILE_DIR)/$*.o $<
else
.c.o:
$(CC) $(CFLAGS) $(RC_CFLAGS) $(COPTS) -c \
-MD -dependency-file $(OFILE_DIR)/$*.d \
-o $(OFILE_DIR)/$*.o $<
md -d -u $(OFILE_DIR)/Makedep $(OFILE_DIR)/$*.d
endif
clean shlib_clean:
-rm -r -f $(OFILE_DIRS)
-rm -f libstuff.a libstuff.dylib libstuff_p.a libstuff_s.a
-rm -f libstuff64.a libstuff64.dylib libstuff64_p.a
install: all
installsrc:
$(MKDIRS) $(SRCROOT)
chmod 755 $(SRCROOT)
gnutar cf - $(INSTALL_FILES) | (cd $(SRCROOT); gnutar xf -)
chmod 444 $(SRCROOT)/*
installGASsrc:
$(MKDIRS) $(SRCROOT)
chmod 755 $(SRCROOT)
gnutar cf - Makefile bytesex.c round.c | (cd $(SRCROOT); gnutar xf -)
chmod 444 $(SRCROOT)/*
fromGASsrc: $(OBJROOT)/dynamic_obj
@cd dynamic_obj; \
$(MAKE) -f ../Makefile libstuff.dylib \
PRODUCT=libstuff.dylib \
VPATH=.. \
OFILE_DIR=. \
SRCROOT=.. \
SYMROOT=.. \
COPTS="-dynamic" \
OFLAG="$(OFLAG)" \
CFILES="bytesex.c round.c" \
RC_CFLAGS="$(RC_CFLAGS)" \
RC_ARCHS="$(RC_ARCHS)";
$(OFILE_DIRS) $(SYMROOT):
$(MKDIRS) $@
-include $(OFILE_DIR)/Makedep
Generated by GNU enscript 1.6.4.