Helmut Eller
be1fb95983
Don't compile forktest on the anangc platform
...
* mps/code/comm.gmk (TEST_TARGETS): Exclude forktest.
2025-09-25 18:38:13 +02:00
Helmut Eller
4de8c79615
* mps/code/comm.gmk (testratio): Add EXEEXT.
2025-09-25 18:27:44 +02:00
Eli Zaretskii
e722ec9cfe
Support the MinGW build of MPS and tests, part 1
...
* mps/code/w3i6gc.gmk:
* mps/code/w3i3gc.gmk:
* mps/code/mingw.gmk: New files, for the MinGW build.
* mps/code/ss.c (StackHot) [__MINGW32__ && __GNUC__ >= 12]: Ignore
dangling-pointer warnings.
* mps/code/global.c (ArenaFinalize): Avoid compiler warnings.
* mps/code/thw3.c (ThreadScan): Avoid compilation errors due to
prototype mismatch.
* mps/code/testlib.h (alloca): Don't redefine for MinGW.
(setenv): Don't redefine for mingw.org's MinGW.
(ulongest_t, longest_t): Separate definitions for MinGW64.
* mps/code/testlib.c (sizelog2) [__MINGW32__]: Fix comparison.
(rnd_align): Avoid name clashes with 'min' and 'max'.
* mps/code/spw3i3.c (StackProbe) [__GNUC__]: Implementation for
MinGW.
* mps/code/protw3.c: Avoid compiler warning.
* mps/code/mpstd.h: Define MinGW (_X86_) and MinGW64 (__X86_64)
configurations.
* mps/code/mpsiw3.c (mps_SEH_filter, mps_SEH_handler): Add
prototypes.
* mps/code/mps.c [MPS_PF_W3I3GC]: Define 32-bit MinGW stuff.
[MPS_PF_W3I6GC]: Define 64-bit MinGW64 stuff.
* mps/code/lockw3.c (RTL_RUN_ONCE, PRTL_RUN_ONCE_INIT_FN)
(RTL_RUN_ONCE_INIT, INIT_ONCE_STATIC_INIT, RTL_RUN_ONCE INIT_ONCE)
(PRTL_RUN_ONCE PINIT_ONCE, PINIT_ONCE_FN, InitOnceExecuteOnce):
Define for mingw.org's MinGW.
* mps/code/comm.gmk (EVENT_TARGETS, EXTRA_TARGETS, TEST_TARGETS)
(UNBUILDABLE_TARGETS): Add $(EXEEXT) to program names.
(TESTTHR): Define correct test for MS-Windows.
Don't fail the build if the *.d dependency files don't exist.
2025-09-24 13:02:30 +03:00
Helmut Eller
7c2bdaa548
Support out-of-tree builds
...
* mps/example/scheme/Makefile.in (VPATH): Set VPATH.
* mps/Makefile.in (COMMON_OPTS): New. Pass SRCDIR down to sub-make.
* mps/code/comm.gmk (VPATH): Set VPATH from SRCDIR parameter
* mps/configure.ac (AC_CONFIG_COMMANDS): Copy .gmk makefiles and some
other things to the biuld directory.
2025-09-22 16:56:02 +02:00
Helmut Eller
7f3726d9a0
Better support for parallel make
...
* mps/code/comm.gmk (LIB_TARGETS, TEST_TARGETS, EVENT_TARGETS)
(TEST_SUITES, testmmqa): If VARIETY is not defined, then disable
parallism with .NOTPARALLEL. Otherwise, avoid the recursive make with
a static pattern rule.
(clean-testansi, clean-testpollnone): New.
* mps/Makefile.in (build-via-make): Invoke submake explicit
VARIETY argument to allow more parallelism.
(test-make-build): Use clean-testansi and clean-testpollnone.
2025-09-15 08:23:25 +02:00
Richard Brooksby
013db39485
Catch-up merge from 'master into branch/2023-04-13/transforms
2023-06-17 11:35:18 +01:00
Richard Brooksby
597422484c
Removing mpsitr.c, a relic of custom/cet, and merging its contents into mpsi.c. reponse to review < https://github.com/ravenbrook/mps/pull/214#issuecomment-1590952221 >.
2023-06-16 09:33:58 +01:00
Richard Brooksby
b6f049a4ac
Catch up merge from master into branch/2023-05-16/interior-pointers
2023-06-15 09:28:49 +01:00
Richard Brooksby
a0e2e74c8b
Catch-up merge of master into branch/2023-04-13/transforms to resolve conflicts.
2023-06-12 14:51:06 +01:00
Gareth Rees
b10b842d75
Make transforms part of the public mps.
...
* Move transforms sources to the core sections of the makefiles.
* Move function declarations to the public header mps.h.
* Update copyright notices for transforms code.
* Remove references to Configura from the comments.
* Remove trailing whitespace.
* Translate design to reStructuredText.
* Move documentation to reference section of manual.
* Add warning about unsuitability when ambiguous references may exist.
(cherry picked from commit b1c30975d91a8ab871ca4d94de1754d5ee44ef03)
2023-06-12 14:19:17 +01:00
Jonathan Holburn
5314172c4f
Correct spelling of target
2023-05-17 20:52:31 +01:00
Jonathan Holburn
ba4abd8ae2
Add addrobj.c to the testcases
2023-05-17 20:39:58 +01:00
Jonathan Holburn
d2ec9570d7
Add dylan test object to comm.gmk for extcon, missing from last commit
2023-05-10 13:57:26 +01:00
Richard Brooksby
f8e0026b40
Adding extcon extension/contraction test to posix builds. fixing warnings in extcon.c.
2023-04-14 10:46:56 +01:00
Richard Brooksby
b948191120
Part of making transforms part of the public mps.
...
(cherry picked from commit 6bd64a230a510bc19323da127d622a19bfd43f63)
2023-04-14 09:58:56 +01:00
Gareth Rees
de7c1320df
Remove mps_arena_expose, deprecated since release 1.111.0
...
Also remove mps_arena_unsafe_expose_remember_protection and
mps_arena_unsafe_expose_restore_protection.
2020-09-24 09:35:47 +01:00
Gareth Rees
af0f431eda
Use https: instead of http: when linking to the ravenbrook web site.
2020-08-30 10:13:03 +01:00
Peter Jackson
4de2606846
Publish licence updates in code directory.
...
Publish minor changes to readme and configure files in main directory.
Main directory and code directory licence texts are now fully updated.
Copied from Perforce
Change: 196994
2020-06-11 17:05:40 +01:00
Gareth Rees
84b26d639e
The makefile rule for building a generic target no longer depends on the content of extra_targets, since this is designed to be configurable.
...
Copied from Perforce
Change: 196414
2019-10-10 14:37:38 +01:00
Gareth Rees
c024758d0a
Convenience target for building mpseventsql.
...
Copied from Perforce
Change: 195251
2018-10-14 14:59:15 +01:00
Gareth Rees
56d1c0bc12
More cross-references.
...
Copied from Perforce
Change: 195084
2018-09-18 12:55:54 +01:00
Gareth Rees
a07f027f02
Guide for new developers.
...
Documentation design.
Expand test case design.
Copied from Perforce
Change: 195083
2018-09-18 12:50:29 +01:00
Gareth Rees
5beafc39b9
catch-up merge from master sources at changelevel 194605 to branch/2016-03-30/tract-p-elim.
...
Copied from Perforce
Change: 194617
2018-07-11 21:52:22 +01:00
Gareth Rees
590850726a
Merge branch/2014-10-26/sc into the master sources.
...
Copied from Perforce
Change: 194595
2018-07-11 15:20:49 +01:00
Gareth Rees
268178f4cf
Merge branch 2016-03-27/cbs-tidy into the master sources.
...
Copied from Perforce
Change: 194572
2018-07-10 15:31:25 +01:00
Gareth Rees
317cc9a5a6
Catch-up merge from master sources at changelevel 194484 to branch/2014-10-26/sc.
...
Copied from Perforce
Change: 194487
2018-07-06 21:42:35 +01:00
Gareth Rees
b30964104a
Rename "node" to "rangetree" as suggested in review by gdr < https://info.ravenbrook.com/mail/2018/07/05/10-17-35/0/ >
...
Get Xcode builds working.
Add rangetree.[ch] to the source code index.
Copied from Perforce
Change: 194434
2018-07-05 12:06:47 +01:00
Gareth Rees
8146970622
Add fork test case (fails on os x if pthread_atfork is not called).
...
pthread_atfork handlers on OS X: in the child, update the mach port for the forking thread and move all other threads to the dead ring.
Copied from Perforce
Change: 193746
2018-06-13 17:09:07 +01:00
Gareth Rees
6903784501
Fix "make testmmqa" on freebsd (the shell doesn't do {a,b,c} expansion).
...
Copied from Perforce
Change: 192545
ServerID: perforce.ravenbrook.com
2016-10-13 19:31:25 +01:00
Gareth Rees
8b002dc4d5
Fix testmmqa target in the hot variety.
...
Copied from Perforce
Change: 192515
ServerID: perforce.ravenbrook.com
2016-10-13 13:31:58 +01:00
Gareth Rees
d44d50dfd0
The mmqa runset command now takes multiple test-sets.
...
Copied from Perforce
Change: 192418
ServerID: perforce.ravenbrook.com
2016-09-14 16:24:34 +01:00
Gareth Rees
3f13486e08
Usability improvements for mmqa:
...
* -i option (MPS_INCLUDE_DIR) now defaults to the code directory relative to the test harness location.
* -p option (PLATFORM) is now a six-character platform code for consistency with the rest of the MPS.
* New -v option (VARIETY) for specifying cool/hot/rash.
* -l option (MPS_LINK_OBJ) now defaults to the appropriate object file for the platform and variety.
* The object file is built automatically.
* If $Id$ of a test file is longer than 70 characters, cut characters out of the middle rather than off the end.
* Eliminate obsolete option -prod (MPS_PRODUCT).
* Support for FreeBSD.
Copied from Perforce
Change: 192285
ServerID: perforce.ravenbrook.com
2016-09-12 11:55:36 +01:00
Gareth Rees
4dd6e899f5
Build and test the toy scheme interpreter during continuous integration, to reduce the risk of accidentally breaking it.
...
Copied from Perforce
Change: 192133
ServerID: perforce.ravenbrook.com
2016-09-04 14:47:08 +01:00
Gareth Rees
9b81dcb5c4
New program mpseventpy emits python data structures representing telemetry events.
...
Copied from Perforce
Change: 191895
ServerID: perforce.ravenbrook.com
2016-06-02 15:02:05 +01:00
Gareth Rees
05d31d83f3
Just report the performance ratio, don't fail if it's too large (to avoid continuous integration failures).
...
Copied from Perforce
Change: 191486
ServerID: perforce.ravenbrook.com
2016-04-21 15:33:08 +01:00
Gareth Rees
87e9184940
Increase target ratios to reduce false positives.
...
Copied from Perforce
Change: 191420
ServerID: perforce.ravenbrook.com
2016-04-21 09:12:16 +01:00
Gareth Rees
f53a73cf02
Pass the -p (posix output) option to /usr/bin/time so that the results are portable between os x and linux.
...
Copied from Perforce
Change: 191378
ServerID: perforce.ravenbrook.com
2016-04-20 16:19:38 +01:00
Gareth Rees
077926ceec
Performance ratio test uses cpu time (not real time). use awk instead of dc to avoid having to install a package.
...
Copied from Perforce
Change: 191365
ServerID: perforce.ravenbrook.com
2016-04-20 15:07:22 +01:00
Gareth Rees
14d975c6a4
Add a test checking that the hot variety is not too much slower than the rash variety. turn this on for continuous integration testing via "make test".
...
Copied from Perforce
Change: 191339
ServerID: perforce.ravenbrook.com
2016-04-20 13:15:18 +01:00
Gareth Rees
6527b51a02
Fix call broken by catch-up merge.
...
Copied from Perforce
Change: 191066
ServerID: perforce.ravenbrook.com
2016-04-13 13:13:41 +01:00
Gareth Rees
c97f77e5ab
Catch-up merge from master sources to branch/2014-10-11/snc.
...
Copied from Perforce
Change: 191065
ServerID: perforce.ravenbrook.com
2016-04-13 13:07:19 +01:00
Richard Brooksby
4e8d2a0b4d
Adding node type, as a tree node containing an address range. this will eventually become the base of segments.
...
Copied from Perforce
Change: 190489
ServerID: perforce.ravenbrook.com
2016-03-28 11:43:06 +01:00
Richard Brooksby
f14f6fa4a2
Removing mv pool class and substituting mvff.
...
Disabling MV Debug test, since that doesn't work now that it's really MVFF Debug.
Copied from Perforce
Change: 190494
ServerID: perforce.ravenbrook.com
2016-03-27 22:24:57 +01:00
Richard Brooksby
f8af9acea9
Catch-up merge from master sources to branch/2014-10-26/sc.
...
Copied from Perforce
Change: 190118
ServerID: perforce.ravenbrook.com
2016-03-16 17:36:35 +00:00
Richard Brooksby
cc6262ae66
Basic removal of the reservoir pool from code and design.
...
Copied from Perforce
Change: 190000
ServerID: perforce.ravenbrook.com
2016-03-13 20:32:24 +00:00
Richard Brooksby
fe38494cc6
Catch-up merge from master sources to branch/2014-10-26/sc.
...
Copied from Perforce
Change: 189865
ServerID: perforce.ravenbrook.com
2016-03-11 14:56:59 +00:00
Gareth Rees
4b962a1d33
Some mmqa tests only work in the cool variety. segregate these into the "coolonly" testset.
...
Copied from Perforce
Change: 189711
ServerID: perforce.ravenbrook.com
2016-03-07 17:18:21 +00:00
Gareth Rees
e2e02d8fbc
Merge poolamsi.c into poolams.c for consistency with other pool class implementations.
...
Copied from Perforce
Change: 189681
ServerID: perforce.ravenbrook.com
2016-03-06 18:49:47 +00:00
Gareth Rees
22b8436354
Add make target for running the mmqa test suite.
...
Copied from Perforce
Change: 189674
ServerID: perforce.ravenbrook.com
2016-03-06 14:15:37 +00:00
Richard Brooksby
8483e0e0c4
Populating awluthe's tables from a thread. analogous to change 189640.
...
Copied from Perforce
Change: 189645
ServerID: perforce.ravenbrook.com
2016-03-05 13:04:06 +00:00