Commit graph

5969 commits

Author SHA1 Message Date
Sören Tempel
9954cde738 Allow prepending include/library search path through -COPT/-CLNK
This commit separates include/library search directory options from
"normal" compiler/linker options and places options passed via the
`-COPT`/`-CLNK` command-line flags in-between. This allows overwriting
the default search paths, since contrary to all other options, the
search paths must be prepend for an -I/-L option to take precedence over
an existing one.

This should (hopefully) make it entirely unnecessary to ever build
Cyclone twice in order to have all changes in the current source tree
take effect.

Fixes #476
2021-11-24 15:32:17 +01:00
Sören Tempel
86949ae500 Makefile.config: remove unneeded case distinction for Darwin
Both cases do the same thing presently.
2021-11-24 12:05:22 +01:00
Justin Ethier
ff6a11042e Prep release 2021-09-24 18:34:01 -07:00
Justin Ethier
3bbd230123 Remove bugfix as it is covered by new feature 2021-09-20 16:48:55 -04:00
Justin Ethier
3c1322c2c0 Revise TBD section 2021-09-07 08:55:25 -04:00
Justin Ethier
9d130722d6 Do not inline calls to system 2021-09-07 08:24:08 -04:00
Justin Ethier
28c166a03e Issue #481 2021-09-07 07:47:16 -04:00
Justin Ethier
67384621bc Issue #481 - Exit if scm->c compilation fails 2021-09-07 07:45:50 -04:00
Justin Ethier
bb861334f6 Simplify heap type definitions
This is the first step in making it easier to change the number and/or size of heap pages.
2021-08-17 15:03:53 -04:00
Justin Ethier
71dc9341a7 Remove dead code 2021-08-17 11:12:36 -04:00
Justin Ethier
fbc92258df Bring back gc_word_align for 8-byte alignment 2021-08-17 09:39:16 -04:00
Justin Ethier
227861cb2e Use smaller datatype for ttl 2021-08-17 07:42:39 -04:00
Justin Ethier
556146ae8f Issue #268 - Added a note to the changelog 2021-08-26 13:20:08 -04:00
Justin Ethier
00a7c2e372 Merge branch '268-dev' 2021-08-26 13:17:25 -04:00
Justin Ethier
876a93bf39 Added -no-compiler-subprocess option 2021-08-17 05:04:36 -04:00
Justin Ethier
68e3fb3687 Revise macro debugging section 2021-08-17 04:21:20 -04:00
Justin Ethier
25dc7b6357 Revise write-up of changes to expand. 2021-08-17 03:55:48 -04:00
Justin Ethier
83937b4639 Issue #480 2021-08-25 17:51:22 -04:00
Justin Ethier
6869c96908 Issue #480 2021-08-25 17:49:43 -04:00
Justin Ethier
f8717517a4 Issue #480 - Make (expand) easier to use
Only require a single expression argument. The remaining environment arguments are generally not required when debugging from the REPL. This makes expand much easier to use for casual debugging.
2021-08-25 17:47:55 -04:00
Justin Ethier
607ece0fce Delete old functions 2021-08-25 17:10:12 -04:00
Justin Ethier
ff7a8492bb Remove error text 2021-08-25 12:47:16 -04:00
Justin Ethier
f5397c17d3 Update API index 2021-08-25 12:46:02 -04:00
Justin Ethier
86cacc3f01 Added (expand) 2021-08-17 03:15:47 -04:00
Justin Ethier
878228e7ae Clean up 2021-08-17 02:35:37 -04:00
Justin Ethier
83a64b4c1c Broke out into two macro sections 2021-08-23 13:38:59 -04:00
Justin Ethier
fc92f9c302 Grammar 2021-08-23 13:36:13 -04:00
Justin Ethier
630f36dc03 Added macro system section 2021-08-23 13:35:00 -04:00
Justin Ethier
99ce726ca3 Fix order of args passed to run-external-compiler 2021-08-16 23:39:09 -04:00
Justin Ethier
7d92a39fdf Run scm compiler as a sub-process 2021-08-16 23:34:00 -04:00
Justin Ethier
50631b8bb5 Use a separate thread to emit the C file 2021-08-16 22:22:04 -04:00
Justin Ethier
42bda1273c Updated 0.32.0 release date, stage next release 2021-08-16 21:50:56 -04:00
Justin Ethier
0290e61996 New release 2021-08-16 21:37:06 -04:00
Justin Ethier
08c4e8f2e6 Remove unused args 2021-08-16 20:24:36 -04:00
Justin Ethier
1d0cbf96ed Use meta file to pass data when compiling programs 2021-08-17 13:41:48 -04:00
Justin Ethier
a5e8cdc5ad
Merge pull request #479 from nmeum/cyclone-local-libs
Makefile: Add `-A libs` to CYCLONE_LOCAL
2021-08-15 22:29:26 -04:00
Justin Ethier
ecfe26d5b7
Merge pull request #478 from nmeum/makefile-prerequisites
Improve Makefile prerequisites
2021-08-15 22:25:29 -04:00
Sören Tempel
34908a56a7 Makefile: Add -A libs to CYCLONE_LOCAL
Otherwise `make libs` cannot find `(cyclone test)`:

	./cyclone -A . -COPT '-Iinclude' -CLNK '-L.' libs/cyclone/test.sld
	Error: Unable to open file: "/usr/lib/cyclone/cyclone/test.scm"

	make: *** [Makefile:170: libs/cyclone/test.o] Error
2021-08-14 20:16:36 +02:00
Sören Tempel
e08e7d3958 Improve Makefile prerequisites
Since commit 15a8f2cfe5 the build order
must be as follows:

	1. Bootstrap cyclone.scm using a pre-existing compiler.
	2. Using cyclone from the previous step, build all libraries.
	3. Using the artifacts from the previous two steps, build
	   icyc, examples, and tests.

This commit updates the Makefile prerequisites accordingly to reflect
this change in build order. Otherwise, Cyclone does not correctly
compile in parallel build mode with `-jN`.
2021-08-14 00:29:32 +02:00
Justin Ethier
5fe773865c Clarify usage of CYC_PTHREAD_SET_STACK_SIZE 2021-08-13 11:01:45 -04:00
Justin Ethier
d2915abe6a Issue #477 - Clean up 2021-08-12 23:01:04 -04:00
Justin Ethier
4ff0bca100 Issue #477 - Added CYC_PTHREAD_SET_STACK_SIZE 2021-08-12 22:46:13 -04:00
Justin Ethier
15a8f2cfe5 Issue #476 - Build libraries / interpreter using local cyclone 2021-08-12 22:15:21 -04:00
Justin Ethier
140f26ebe9 Prep new release 2021-08-11 09:40:46 -04:00
Justin Ethier
1a5310b881 Stage breaking up emitting C file / compiling C 2021-08-10 22:43:52 -04:00
Justin Ethier
ad64f7a3ab More intelligent calling of subprocess for compiling library dependencies 2021-08-10 17:18:31 -04:00
Justin Ethier
fa58b9d538 fxbit-set? properly handles negative i 2021-08-08 21:47:31 -04:00
Justin Ethier
3cc79395fa Do not memoize pure functions by default 2021-08-05 14:52:35 -04:00
Justin Ethier
677ccb6789
Merge pull request #474 from nmeum/conditional-assignment
Don't use conditional assignment operator for CFLAGS/LDFLAGS
2021-08-03 22:43:44 -04:00
Justin Ethier
982462b13d Issue #473 2021-08-03 22:04:50 -04:00