> In the 'ins' branch, build/Makefile.in looks like it's heading down the > same wrong road as parrot. See parrot's TT #700 for more details and a > patch for parrot. I'd suggest a similar approach for rakudo. > > The problem is that while MS forbids a space, Solaris 8 requires one. > You can't win in the Makefile. 'make' is not a reliable textual > susbtitution tool when leading or trailing blanks are involved.
This patch implements the "similar aproach". I can't test this because parrot no longer builds for me on any of my usual test platforms, but it looks about right. diff --git a/build/Makefile.in b/build/Makefile.in index 16b23c2..afa7e0a 100644 --- a/build/Makefile.in +++ b/build/Makefile.in @@ -10,11 +10,9 @@ PARROT_INCLUDE_DIR = @include...@$(PARROT_VERSION) PARROT_LIB_DIR = @lib...@$(PARROT_VERSION) PARROT_SRC_DIR = @src...@$(PARROT_VERSION) -CC = @cc@ -c -CC_OUT = @cc_o_out@ +CC = @cc@ CFLAGS = @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ LD = @ld@ -LD_OUT = @ld_out@ LDFLAGS = @ldflags@ @ld_debug@ LD_LOAD_FLAGS = @ld_load_flags@ LIBPARROT = @inst_libparrot_ldflags@ @@ -367,9 +365,9 @@ $(DYNPMC): $(PMC_SOURCES) $(PMC2C) --dump $(PMC2C_INCLUDES) $(PMC_SOURCES) $(PMC2C) --c $(PMC2C_INCLUDES) $(PMC_SOURCES) $(PMC2C) --library $(GROUP) --c $(PMC_SOURCES) - $(CC) $(CC_OUT) $(GROUP)$(O) -I$(PMC_DIR) $(CINCLUDES) $(CFLAGS) $(GROUP).c - cd $(PMC_DIR) && $(CC) $(CINCLUDES) $(CFLAGS) *.c - $(LD) $(LD_OUT)$(DYNPMC) $(GROUP)$(O) src/pmc/*$(O) $(LINKARGS) + $(CC) -c @cc_o_...@$(GROUP)$(O) -I$(PMC_DIR) $(CINCLUDES) $(CFLAGS) $(GROUP).c + cd $(PMC_DIR) && $(CC) -c $(CINCLUDES) $(CFLAGS) *.c + $(LD) @ld_...@$(DYNPMC) $(GROUP)$(O) src/pmc/*$(O) $(LINKARGS) DYNOPS_TARGETS = \ $(OPS_DIR)/$(OPS)$(LOAD_EXT) \ @@ -382,22 +380,22 @@ $(DYNOPS): $(DYNOPS_TARGETS) $(OPS_DIR)/$(OPS)$(LOAD_EXT): $(OPS_DIR)/$(OPS_SOURCE) cd $(OPS_DIR) && $(OPS2C) C --dynamic $(OPS_SOURCE) - cd $(OPS_DIR) && $(CC) $(CC_OUT) $(OPS)$(O) $(CINCLUDES) $(CFLAGS) $(OPS).c - cd $(OPS_DIR) && $(LD) $(LD_OUT)$(OPS)$(LOAD_EXT) $(OPS)$(O) $(LINKARGS) + cd $(OPS_DIR) && $(CC) -c @cc_o_...@$(OPS)$(O) $(CINCLUDES) $(CFLAGS) $(OPS).c + cd $(OPS_DIR) && $(LD) @ld_...@$(OPS)$(LOAD_EXT) $(OPS)$(O) $(LINKARGS) $(OPS_DIR)/$(OPS)_switch$(LOAD_EXT): $(OPS_DIR)/$(OPS_SOURCE) cd $(OPS_DIR) && $(OPS2C) CSwitch --dynamic $(OPS_SOURCE) - cd $(OPS_DIR) && $(CC) $(CC_OUT) $(OPS)_switch$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_switch.c - cd $(OPS_DIR) && $(LD) $(LD_OUT)$(OPS)_switch$(LOAD_EXT) $(OPS)_switch$(O) $(LINKARGS) + cd $(OPS_DIR) && $(CC) -c @cc_o_...@$(OPS)_switch$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_switch.c + cd $(OPS_DIR) && $(LD) @ld_...@$(OPS)_switch$(LOAD_EXT) $(OPS)_switch$(O) $(LINKARGS) $(OPS_DIR)/$(OPS)_cg$(LOAD_EXT): $(OPS_DIR)/$(OPS_SOURCE) cd $(OPS_DIR) && $(OPS2C) CGoto --dynamic $(OPS_SOURCE) - cd $(OPS_DIR) && $(CC) $(CC_OUT) $(OPS)_cg$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_cg.c - cd $(OPS_DIR) && $(LD) $(LD_OUT)$(OPS)_cg$(LOAD_EXT) $(OPS)_cg$(O) $(LINKARGS) + cd $(OPS_DIR) && $(CC) -c @cc_o_...@$(OPS)_cg$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_cg.c + cd $(OPS_DIR) && $(LD) @ld_...@$(OPS)_cg$(LOAD_EXT) $(OPS)_cg$(O) $(LINKARGS) $(OPS_DIR)/$(OPS)_cgp$(LOAD_EXT): $(OPS_DIR)/$(OPS_SOURCE) cd $(OPS_DIR) && $(OPS2C) CGP --dynamic $(OPS_SOURCE) - cd $(OPS_DIR) && $(CC) $(CC_OUT) $(OPS)_cgp$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_cgp.c - cd $(OPS_DIR) && $(LD) $(LD_OUT)$(OPS)_cgp$(LOAD_EXT) $(OPS)_cgp$(O) $(LINKARGS) + cd $(OPS_DIR) && $(CC) -c @cc_o_...@$(OPS)_cgp$(O) $(CINCLUDES) $(CFLAGS) $(OPS)_cgp.c + cd $(OPS_DIR) && $(LD) @ld_...@$(OPS)_cgp$(LOAD_EXT) $(OPS)_cgp$(O) $(LINKARGS) -- Andy Dougherty dough...@lafayette.edu