~ chicken-core (chicken-5) f2b3bf92fb606d42f1898b8ff914cb1c352d3c32


commit f2b3bf92fb606d42f1898b8ff914cb1c352d3c32
Author:     felix <bunny351@gmail.com>
AuthorDate: Tue Jun 8 21:39:15 2010 +0200
Commit:     felix <bunny351@gmail.com>
CommitDate: Tue Jun 8 21:39:15 2010 +0200

    TARGET_FEATURES and some trivial changes

diff --git a/Makefile.mingw b/Makefile.mingw
index c2a48a6a..7d99bcaf 100644
--- a/Makefile.mingw
+++ b/Makefile.mingw
@@ -208,6 +208,9 @@ endif
 	echo #ifndef C_TARGET_LDFLAGS >>$@
 	echo # define C_TARGET_LDFLAGS "$(TARGET_LINKER_OPTIONS) $(TARGET_LINKER_OPTIMIZATION_OPTIONS)" >>$@
 	echo #endif >>$@
+	echo #ifndef C_TARGET_FEATURES >>$@
+	echo # define C_TARGET_FEATURES "$(TARGET_FEATURES)" >>$@
+	echo #endif >>$@
 	echo #ifndef C_CROSS_CHICKEN >>$@
 	echo # define C_CROSS_CHICKEN $(CROSS_CHICKEN) >>$@
 	echo #endif >>$@
diff --git a/csc.scm b/csc.scm
index 2661869d..79631ad9 100644
--- a/csc.scm
+++ b/csc.scm
@@ -39,6 +39,7 @@
 (define-foreign-variable TARGET_CFLAGS c-string "C_TARGET_CFLAGS")
 (define-foreign-variable INSTALL_CFLAGS c-string "C_INSTALL_CFLAGS")
 (define-foreign-variable TARGET_LDFLAGS c-string "C_TARGET_LDFLAGS")
+(define-foreign-variable TARGET_FEATURES c-string "C_TARGET_FEATURES")
 (define-foreign-variable INSTALL_LDFLAGS c-string "C_INSTALL_LDFLAGS")
 (define-foreign-variable INSTALL_MORE_LIBS c-string "C_INSTALL_MORE_LIBS")
 (define-foreign-variable INSTALL_MORE_STATIC_LIBS c-string "C_INSTALL_MORE_STATIC_LIBS")
@@ -125,6 +126,7 @@
 (define best-compilation-optimization-options default-compilation-optimization-options)
 (define default-linking-optimization-options (string-split (if host-mode INSTALL_LDFLAGS TARGET_LDFLAGS)))
 (define best-linking-optimization-options default-linking-optimization-options)
+(define extra-features (if host-mode '() (string-split TARGET_FEATURES)))
 
 (define-constant simple-options
   '(-explicit-use -no-trace -no-warnings -no-usual-integrations -optimize-leaf-routines -unsafe
@@ -807,7 +809,11 @@ EOF
 		 (if to-stdout 
 		     '("-to-stdout")
 		     `("-output-file" ,(quotewrap fc)) )
-		 (map quote-option (append translate-options translation-optimization-options)) ) )
+		 (map quote-option
+		      (append 
+		       extra-features
+		       translate-options 
+		       translation-optimization-options)) ) )
 	 " ") )
        (set! c-files (append (list fc) c-files))
        (set! generated-c-files (append (list fc) generated-c-files))))
diff --git a/defaults.make b/defaults.make
index 1f7b92d9..e4e8537b 100644
--- a/defaults.make
+++ b/defaults.make
@@ -144,6 +144,7 @@ TARGET_RUN_PREFIX ?= $(TARGET_PREFIX)
 TARGET_LIBRARIES ?= $(LIBRARIES)
 TARGET_LINKER_OPTIONS ?= $(LINKER_OPTIONS)
 TARGET_LINKER_OPTIMIZATION_OPTIONS ?= $(LINKER_OPTIMIZATION_OPTIONS)
+TARGET_FEATURES ?=
 
 ifneq ($(TARGET_C_COMPILER),$(C_COMPILER))
 CROSS_CHICKEN = 1
@@ -446,6 +447,9 @@ endif
 	echo "#ifndef C_TARGET_LDFLAGS" >>$@
 	echo "# define C_TARGET_LDFLAGS \"$(TARGET_LINKER_OPTIONS) $(TARGET_LINKER_OPTIMIZATION_OPTIONS)\"" >>$@
 	echo "#endif" >>$@
+	echo "#ifndef C_TARGET_FEATURES" >>$@
+	echo "# define C_TARGET_FEATURES \"$(TARGET_FEATURES)\"" >>$@
+	echo "#endif" >>$@
 	echo "#ifndef C_CROSS_CHICKEN" >>$@
 	echo "# define C_CROSS_CHICKEN $(CROSS_CHICKEN)" >>$@
 	echo "#endif" >>$@
diff --git a/rules.make b/rules.make
index 825c21dd..883a48e4 100644
--- a/rules.make
+++ b/rules.make
@@ -659,7 +659,7 @@ install-bin:
 # 	$(MAKE_WRITABLE_COMMAND) $(CHICKEN_STATUS_PROGRAM)$(EXE)
 # endif
 else
-install-bin: $(TARGETS) install-libs install-dev install-target
+install-bin: $(TARGETS) install-libs install-dev
 	$(MAKEDIR_COMMAND) $(MAKEDIR_COMMAND_OPTIONS) "$(DESTDIR)$(IBINDIR)"
 	$(INSTALL_PROGRAM) $(INSTALL_PROGRAM_EXECUTABLE_OPTIONS) $(CHICKEN_PROGRAM)$(EXE) "$(DESTDIR)$(IBINDIR)"
 	$(INSTALL_PROGRAM) $(INSTALL_PROGRAM_EXECUTABLE_OPTIONS) $(CSI_PROGRAM)$(EXE) "$(DESTDIR)$(IBINDIR)"
diff --git a/scripts/henrietta.scm b/scripts/henrietta.scm
index 4f5e2a03..7747056b 100644
--- a/scripts/henrietta.scm
+++ b/scripts/henrietta.scm
@@ -1,6 +1,6 @@
 ;;;; henrietta.scm - Server program (CGI) for serving eggs from a repository over HTTP
 ;
-; Copyright (c) 2008-2010, The Chicken Team
+; Copyright (c) 2008-2010, The CHICKEN Team
 ; All rights reserved.
 ;
 ; Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following
diff --git a/setup-download.scm b/setup-download.scm
index c0563cbe..51727dd1 100644
--- a/setup-download.scm
+++ b/setup-download.scm
@@ -306,13 +306,13 @@
 	 (error "cannot retrieve extension unsupported transport" transport) ] ) ) )
 
   (define (list-extensions transport location #!key quiet username password)
-    (fluid-let ([*quiet* quiet])
+    (fluid-let ((*quiet* quiet))
       (case transport
-	[(local)
-	 (list-eggs/local location) ]
-	[(svn)
-	 (list-eggs/svn location username password) ]
-	[else
-	 (error "cannot list extensions - unsupported transport" transport) ] ) ) )
+	((local)
+	 (list-eggs/local location) )
+	((svn)
+	 (list-eggs/svn location username password) )
+	(else
+	 (error "cannot list extensions - unsupported transport" transport) ) ) ) )
 
 ) ;module setup-download
Trap