On Wed, May 14, 2008 at 04:52:17PM +0200, felix winkelmann wrote: > Hi! > > > It's silent in here.... So, let me use this moment to give > some progress info on the state of the "hygienic" > chicken that I'm currently working on. In > > https://chicken.wiki.br/svn/chicken-eggs/chicken/branches/hygienic > > you'll find a modified version of chicken that has been completely > converted to hygienic macros (syntax-rules + explicit-renaming).
> Built-in modules are currently "scheme" (r5rs), "chicken" (library unit)
> and one module for each library unit. I had to touch the build, as
> the import libraries for these modules are compiled as dynamically
> loadable modules - I hope I didn't break anything for the less
> popular platforms.
I've just tested on NetBSD and it didn't build at first. It gave me
this error:
gcc -shared \
-shared chicken.import.o -o chicken.import.so \
-lchicken -lm
ld: cannot find -lchicken
gmake[1]: *** [chicken.import.so] Error 1
I managed to fix it, but I'm unsure if my fix is the correct one so
I didn't commit it. See the attachment for the patch.
After applying this patch, it works great and all tests pass, too!
Excellent work Felix. Three hurrays!
Cheers,
Peter
--
http://sjamaan.ath.cx
--
"The process of preparing programs for a digital computer
is especially attractive, not only because it can be economically
and scientifically rewarding, but also because it can be an aesthetic
experience much like composing poetry or music."
-- Donald Knuth
Index: Makefile.bsd
===================================================================
--- Makefile.bsd (revision 10820)
+++ Makefile.bsd (working copy)
@@ -37,7 +37,7 @@
else
C_COMPILER_OPTIMIZATION_OPTIONS ?= -Os -fomit-frame-pointer
endif
-LINKER_LINK_SHARED_LIBRARY_OPTIONS = -shared
+LINKER_LINK_SHARED_LIBRARY_OPTIONS = -shared -Wl,-L.
LINKER_LINK_SHARED_PROGRAM_OPTIONS = -Wl,-R$(LIBDIR)
LIBRARIES = -lm
Index: rules.make
===================================================================
--- rules.make (revision 10820)
+++ rules.make (working copy)
@@ -775,7 +775,8 @@
.SUFFIXES: .import.so
%.import.so: %.import.o
- $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_DLOADABLE_OPTIONS) $^
$(LINKER_OUTPUT_OPTION) $@ \
+ $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_LIBRARY_OPTIONS) \
+ $(LINKER_LINK_DLOADABLE_OPTIONS) $^ $(LINKER_OUTPUT_OPTION) $@ \
$(LINKER_LIBRARY_PREFIX)chicken$(LINKER_LIBRARY_SUFFIX) $(LIBRARIES)
# executables
pgpu1CU27Rd26.pgp
Description: PGP signature
_______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
