Hi,

attempting to build 5.0.0rc1 in parallel (with something like gmake
-j4 on FreeBSD) fails with (garbled output courtesy of the parallel
build...):

cc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES 
chicken-do.c -o chicken-do5
./chicken.h:48echo '# define C_INSTALL_POSTINSTALL_PROGRAM "true"' >> 
chicken-defaults.h
:11: echo '#endif' >> chicken-defaults.h
fatal error: echo '#ifndef C_INSTALL_RC_COMPILER' >> chicken-defaults.h
'chicken-config.h' fileecho '# define C_INSTALL_RC_COMPILER ""' >> 
chicken-defaults.h
 not foundecho '#endif' >> chicken-defaults.h

# include "chicken-config.h"
          ^~~~~~~~~~~~~~~~~~

It seems chicken-do is being compiled with HAVE_CHICKEN_CONFIG_H
before chicken-config.h is generated.  A simple addition to rules.make
seems to fix this.  Patch attached.

Thanks!
From b28383e9809c944be62d5c1253aff9d98bc50197 Mon Sep 17 00:00:00 2001
From: Tobias Kortkamp <t...@tobik.me>
Date: Mon, 3 Sep 2018 10:31:55 +0200
Subject: [PATCH 1/1] Fix parallel build

chicken-do needs chicken-config.h

Signed-off-by: Tobias Kortkamp <t...@tobik.me>
---
 rules.make | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/rules.make b/rules.make
index 89bd462e..50bddfb4 100644
--- a/rules.make
+++ b/rules.make
@@ -252,7 +252,7 @@ $(eval $(call declare-program-from-object,$(CSI_STATIC_EXECUTABLE),csi))
 
 # "chicken-do"
 
-$(CHICKEN_DO_PROGRAM)$(EXE): $(SRCDIR)chicken-do.c
+$(CHICKEN_DO_PROGRAM)$(EXE): $(SRCDIR)chicken-do.c $(CHICKEN_CONFIG_H)
 	$(C_COMPILER) $(C_COMPILER_OPTIONS) $< -o $@
 
 # scripts
-- 
2.18.0

_______________________________________________
Chicken-hackers mailing list
Chicken-hackers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-hackers

Reply via email to