From: gwright@antiope.com Date: Tue, 21 Dec 2010 13:32:33 +0000 (+0000) Subject: Fix #4829 (build does not respect --with-gcc option) X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=834a2186da7f4ea29d4984a5f809183cb299754a Fix #4829 (build does not respect --with-gcc option) This patch fixes what seems to be the last problem with the --with-gcc option. On OS X, we need to pass the path to gcc to dtrace as the preprocessor. (Internally, dtrace on OS X sets the default preprocessor to /usr/bin/gcc.) ATM, dtrace is only supported on OS X, so we don't need any conditionalization. If dtrace is ported to other platforms, we might need to change this. However, usage on other platforms will probably be similar to OS X, since many of Apple's changes are to use the gnu toolchain instead of the Sun toolchain. --- diff --git a/rts/ghc.mk b/rts/ghc.mk index 0c224e9..8825219 100644 --- a/rts/ghc.mk +++ b/rts/ghc.mk @@ -460,9 +460,14 @@ ifeq "$(HaveDtrace)" "YES" rts_CC_OPTS += -DDTRACE rts_HC_OPTS += -DDTRACE +# Apple's dtrace (the only one supported by ghc at the moment) uses +# gcc as its preprocessor. If gcc isn't at /usr/bin/gcc, or we need +# to force it to use a different gcc, we need to give the path in +# the option cpppath. + DTRACEPROBES_SRC = rts/RtsProbes.d $(DTRACEPROBES_H): $(DTRACEPROBES_SRC) includes/ghcplatform.h | $(dir $@)/. - "$(DTRACE)" $(filter -I%,$(rts_CC_OPTS)) -C -h -o $@ -s $< + "$(DTRACE)" $(filter -I%,$(rts_CC_OPTS)) -C -x cpppath=$(WhatGccIsCalled) -h -o $@ -s $< endif