diff options
Diffstat (limited to 'GNUmakefile')
-rw-r--r-- | GNUmakefile | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile new file mode 100644 index 00000000000..ce0b8336ef0 --- /dev/null +++ b/GNUmakefile @@ -0,0 +1,88 @@ +# APPLE LOCAL file build machinery +# Apple GCC Compiler Makefile for use by buildit. +# +# This makefile is intended only for use with B&I buildit. For "normal" +# builds use the conventional FSF top-level makefile. +# +# You can specify TARGETS=ppc (or i386) on the buildit command line to +# limit the build to just one target. The default is for ppc and i386. +# The compiler targetted at this host gets built anyway, but not installed +# unless it's listed in TARGETS. + +# Include the set of standard Apple makefile definitions. +ifndef CoreOSMakefiles +CoreOSMakefiles = $(MAKEFILEPATH)/CoreOS +endif +include $(CoreOSMakefiles)/Standard/Standard.make + +# Enable Apple extensions to (gnu)make. +USE_APPLE_PB_SUPPORT = all + +HOSTS = ppc i386 # `arch` +targets = echo $${TARGETS:-'ppc i386'} +TARGETS := $(shell $(targets)) + +RC_ARCHS = $(HOSTS) + +SRCROOT = . + +SRC = `cd $(SRCROOT) && pwd | sed s,/private,,` +OBJROOT = $(SRC)/obj +SYMROOT = $(OBJROOT)/../sym +DSTROOT = $(OBJROOT)/../dst + +PREFIX = /usr + +####################################################################### + +install: $(OBJROOT) $(SYMROOT) $(DSTROOT) + cd $(OBJROOT) && \ + $(SRC)/build_gcc "$(RC_ARCHS)" "$(TARGETS)" \ + $(SRC) $(PREFIX) $(DSTROOT) $(SYMROOT) + +# installhdrs does nothing, because the headers aren't useful until +# the compiler is installed. +installhdrs: + +# We build and install in one shell script. +build: + +installsrc: + @echo + @echo ++++++++++++++++++++++ + @echo + Installing sources + + @echo ++++++++++++++++++++++ + @echo + if [ $(SRCROOT) != . ]; then \ + $(PAX) -rw . $(SRCROOT); \ + fi + find -d "$(SRCROOT)" \( -type d -a -name CVS -o \ + -type f -a -name .DS_Store -o \ + -name \*~ -o -name .\#\* \) \ + -exec rm -rf {} \; + +####################################################################### + +clean: + @echo + @echo ++++++++++++ + @echo + Cleaning + + @echo ++++++++++++ + @echo + @if [ -d $(OBJROOT) -a "$(OBJROOT)" != / ]; then \ + echo '*** DELETING ' $(OBJROOT); \ + rm -rf $(OBJROOT); \ + fi + @if [ -d $(SYMROOT) -a "$(SYMROOT)" != / ]; then \ + echo '*** DELETING ' $(SYMROOT); \ + rm -rf $(SYMROOT); \ + fi + @if [ -d $(DSTROOT) -a "$(DSTROOT)" != / ]; then \ + echo '*** DELETING ' $(DSTROOT); \ + rm -rf $(DSTROOT); \ + fi + +####################################################################### + +$(OBJROOT) $(SYMROOT) $(DSTROOT): + mkdir -p $@ |