Actually it is not that hard to build FriCAS using only Lisp compiler
(without C compiler).

Of course, this means there will be no hyperdoc, graphics, clef, sman.
Just FriCASsys, just algebra.

This can be useful, if you are using the emacs/texmacs/jupyter/sagemath
interface.

This can also be useful when porting FriCAS to different Lisp.  No need
to worry about FFI when doing pure Lisp build.

The following diff is just a quick hack to achieve this.
You use this to test the build: "make -jN CC=not-exist all-fricassys"

Waldek, if you think such "--without-c" build option is useful, I can
develop it into a full patch.

- Qian

============

diff --git a/src/Makefile.in b/src/Makefile.in
index cf3eb2e1..9ec5fe40 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -35,7 +35,7 @@ all-doc: all-hyper all-fricassys
        cd doc && ${MAKE}
 all-lib:
        @cd lib && ${MAKE}
-all-lisp: all-lib
+all-lisp:
        cd lisp && $(MAKE) all-lisp
 all-boot: all-lisp
        @cd boot && ${MAKE}
@@ -45,7 +45,7 @@ all-interpsys: all-boot

 all-fricassys: all-asq
        cd interp && $(MAKE) all-fricassys
-all-algebra: all-interpsys util-ht
+all-algebra: all-interpsys
        @ echo 30b running find-algebra-files
        (cd $(srcdir)/algebra; \
          . ../scripts/find-algebra-files) \
diff --git a/src/etc/Makefile.in b/src/etc/Makefile.in
index 4d077a01..54ed193a 100644
--- a/src/etc/Makefile.in
+++ b/src/etc/Makefile.in
@@ -56,7 +56,6 @@ bin_PROGRAMS = asq$(EXEEXT)

 $(fricas_target_bindir)/asq$(EXEEXT): $(srcdir)/asq.c $(fricas_c_macros)
        @echo 4 making $@ from $<
-       ${CC} ${CCF} $(fricas_includes) -o $@ $<

 $(fricas_target_libdir)/summary: $(srcdir)/summary
        cp $< $@
diff --git a/src/lisp/Makefile.in b/src/lisp/Makefile.in
index 30f61509..1196d9a9 100644
--- a/src/lisp/Makefile.in
+++ b/src/lisp/Makefile.in
@@ -102,7 +102,7 @@ fricas-config.lisp:
        if [ x$(fricas_has_directory_operations) = xyes ] ; then \
            echo '(if (not (member :fricas_has_remove_directory' \
                           ' *features*)) ' \
-                    '(push :fricas_has_remove_directory *features*))' \
+                    '(push :fricas_has_no_remove_directory *features*))' \
               >> $@ ; \
        fi

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/41b7a091-dfef-18f7-abd7-3e02c60780c3%40gmail.com.

Reply via email to