1. 14 May, 2022 1 commit
  2. 13 May, 2022 4 commits
  3. 09 May, 2022 1 commit
  4. 06 May, 2022 2 commits
    • janneke's avatar
      build: Fix --with-bootstrap build. · f785f8d5
      janneke authored
      Reported by Vagrant Cascadian <vagrant@debian.org>.
      
      * build-aux/build.sh.in: Before building mes using mescc, in bootstrap
      mode, remove globals.o built for lib.
      f785f8d5
    • janneke's avatar
      doc: Post-release update. · 1c2a504c
      janneke authored
      * doc/announce/ANNOUNCE-0.24: Add gen-announce checksums.
      * build-aux/GNUmakefile.in (--previous-version): Update to 0.24.  Add
      bug-mes to release announce.
      1c2a504c
  5. 02 May, 2022 1 commit
  6. 30 Apr, 2022 1 commit
    • janneke's avatar
      build: Release 0.24. · a36eb013
      janneke authored
      * configure (VERSION): Bump to 0.24.
      * configure.sh (VERSION): Likewise.
      * build-aux/GNUmakefile.in (gen-announce): Update previous-version to
      0.23.
      * mes/module/mes/repl.mes (welcome): Update copyright years.
      a36eb013
  7. 01 May, 2022 2 commits
  8. 30 Apr, 2022 1 commit
  9. 03 Nov, 2019 1 commit
    • janneke's avatar
      doc: Update `README'. · 76755d6b
      janneke authored
      * README: Mention Mes can be bootstrapped using M2-Planet.
      Mention Full Source Bootstrap sponsoring by NlNet.
      76755d6b
  10. 02 Jan, 2021 1 commit
    • janneke's avatar
      doc: Update 'AUTHORS'. · c82c8da8
      janneke authored
      * AUTHORS: Mention Jeremiah Orians as co-author on ELF heanders and
      mention M2-Planet imports.  Mention bug fixes by W.J. van der Laan.
      c82c8da8
  11. 30 Apr, 2022 3 commits
    • janneke's avatar
      doc: Update Guix bootstrap status. · d4589b6f
      janneke authored
      * doc/mes.texi (Bootstrappable Builds): Add reference to Guix.
      (Reduced Binary Seed Bootstrap): Add node and section header.
      (Scheme-only Bootsrap): New section.
      (Full Source Bootstrap): Add node and section header.  Some updates.
      (Stage0): Add node and section header.
      (M2-Planet): New section.
      (The Mes Bootstrap Process): Fix typos, update to current Guix reduced
      binary seed bootstrap status.
      * doc/images/gcc-mesboot-graph.dot: Regenerate.
      d4589b6f
    • janneke's avatar
      doc: Update dependencies, add M2-Planet. · 28a828ff
      janneke authored
      * INSTALL (Other GNU/Linux): Update mescc-tools requirement, mention
      M2-Planet.
      (Prerequisites): Likewise.
      * doc/mes.texi (Regular Requirements): Likewise.  Rename to...
      (Requirements): ...this.
      (Bootstrap Requirements): Likewise.
      (Building from Git): Mention dependencies on GNU Texinfo, GNU help2man,
      graphviz, and perl.
      28a828ff
    • janneke's avatar
      doc: Use `guix shell' instead of `guix environment'. · 796dc2dc
      janneke authored
      * HACKING (SETUP): Use `guix shell' instead of `guix environment'.
      * INSTALL (Guix): Likewise.
      * PORTING (Setup environment): Likewise.
      * doc/mes.texi (Building from Git): Likewise.
      * simple.sh: Likewise.
      * guix.scm: Likewise.  Add time-machine with working commit.
      796dc2dc
  12. 02 May, 2022 2 commits
  13. 30 Apr, 2022 1 commit
    • janneke's avatar
      ARM: build: Cater for M2-Planet. · d1297688
      janneke authored
      * include/linux/arm/syscall.h: Add support for M2-Planet.
      * lib/linux/arm-mes-m2/_exit.c,
      lib/linux/arm-mes-m2/_write.c,
      lib/linux/arm-mes-m2/crt1.M1,
      lib/linux/arm-mes-m2/crt1.c,
      lib/linux/arm-mes-m2/syscall.c,
      lib/m2/arm/ELF-arm.hex2,
      lib/m2/arm/arm_defs.M1: New files.
      * build-aux/build.sh.in: Also allow kaem build for ARM.
      d1297688
  14. 01 May, 2022 1 commit
  15. 30 Apr, 2022 1 commit
  16. 01 May, 2022 1 commit
    • janneke's avatar
      guix: mescc-tools: Update to 1.4.0 · 79da3fc3
      janneke authored
      * gnu/packages/mes.scm (m2-planet): Update to 1.4.0.
      [native-inputs]: Add which.
      [argument]: Remove patch-prefix stage.
      79da3fc3
  17. 02 May, 2022 1 commit
    • janneke's avatar
      build: Depend on mescc-tools 1.4.0. · aa128eaa
      janneke authored
      * configure (main): Check for hex2, M1 1.4.0, and blood-elf 2.0.0.
      * module/mescc/mescc.scm (M1->blood-elf): Use --little-endian with blood-elf call.
      * kaem.run,
      scaffold/argv.kaem,
      scaffold/global-array.kaem,
      scaffold/hello.kaem,
      scaffold/local-array.kaem,
      scaffold/local-static-array.kaem,
      scaffold/main.kaem,
      scaffold/read.kaem,
      simple.make: Likewise.
      aa128eaa
  18. 30 Apr, 2022 4 commits
    • janneke's avatar
      guix: m2-planet: Update to 1.8.0. · d0e5f812
      janneke authored
      * guix/git/mes.scm (m2-planet)[source]: Update to 1.8.0.
      [arguments]: Remove patch-prefix stage.
      [home-page]: Fix.
      d0e5f812
    • janneke's avatar
      build: Depend on M2-Planet-1.8.0. · 93254bac
      janneke authored
      * configure (main): Bump M2-Planet version to 1.8.0.
      * kaem.run,
      scaffold/argv.kaem,
      scaffold/global-array.kaem,
      scaffold/hello.kaem,
      scaffold/local-array.kaem,
      scaffold/local-static-array.kaem,
      scaffold/main.kaem,
      scaffold/read.kaem:: Use M2-Planet --bootstrap-mode.
      * build-aux/build-scaffold.sh: Remove obsolete --exec_enable.
      93254bac
    • janneke's avatar
      guix: Update package inputs to new style. · 22f24be2
      janneke authored
      * guix/git/mes.scm (m2-planet)[native-inputs]: Use simple list.
      * guix/git/mes.scm (nyacc-0.99): Likewise.
      [inputs]: Use simple list.
      (nyacc): Likewise.
      (mes)[propagated-inputs]: Use simple list.
      [native-inputs]: Use list instead of alist.
      [native-search-paths]: New field.
      22f24be2
    • janneke's avatar
      Mes C Library: memchr: Avoid compile warning. · c45bd1bd
      janneke authored
      * lib/string/memchr.c (memchr): Cast return to void*.
      c45bd1bd
  19. 16 May, 2021 1 commit
    • janneke's avatar
      core: Fix FRAME_SIZE conflict. · 8920f558
      janneke authored
      This avoids conflicting with FRAME_SIZE from signal.h.
      
      * include/mes/constants.h (FRAME_SIZE): Rename to...
      (GC_FRAME_SIZE): ...this.
      (FRAME_PROCEDURE): Rename to...
      (GC_FRAME_PROCEDURE): ...this.
      * src/eval-apply.c (eval_apply): Update accordingly.
      * src/gc.c (gc_push_frame, gc_peek_frame, gc_pop_frame): Update accordingly.
      * src/stack.c (make_frame, make_stack): Update accordingly.
      8920f558
  20. 02 May, 2021 2 commits
    • janneke's avatar
      core: Resurrect gcc-10 support. · 72e371d7
      janneke authored
      * include/mes/mes.h (g_datadir, g_debug, g_buf, g_continuations,
      g_symbols, g_symbol_max, g_mini, R0, R1, R2, R3, M0, g_macros, g_ports,
      ARENA_SIZE, MAX_ARENA_SIZE, STACK_SIZE, JAM_SIZE, GC_SAFETY, MAX_STRING,
      g_arena, cell_arena, cell_zero, g_free, g_symbol, g_stack_array,
      g_cells, g_news, g_stack, gc_count, gc_start_time, gc_end_time, gc_time,
      __execl_c_argv, __open_boot_buf, __open_boot_file_name, __setenv_buf,
      __reader_read_char_buf, g_start_time, __gettimeofday_time,
      __get_internal_run_time_ts): Declare extern.
      * include/mes/symbols.h ( cell_nil, cell_f, cell_t, cell_dot,
      cell_arrow, cell_undefined, cell_unspecified, cell_closure,
      cell_circular, cell_vm_apply, cell_vm_apply2, cell_vm_begin,
      cell_vm_begin_eval, cell_vm_begin_expand, cell_vm_begin_expand_eval,
      cell_vm_begin_expand_macro, cell_vm_begin_expand_primitive_load,
      cell_vm_begin_primitive_load, cell_vm_begin_read_input_file,
      cell_vm_call_with_current_continuation2, cell_vm_call_with_values2,
      cell_vm_eval, cell_vm_eval2, cell_vm_eval_check_func,
      cell_vm_eval_define, cell_vm_eval_macro_expand_eval,
      cell_vm_eval_macro_expand_expand, cell_vm_eval_pmatch_car,
      cell_vm_eval_pmatch_cdr, cell_vm_eval_set_x, cell_vm_evlis,
      cell_vm_evlis2, cell_vm_evlis3, cell_vm_if, cell_vm_if_expr,
      cell_vm_macro_expand, cell_vm_macro_expand_car,
      cell_vm_macro_expand_cdr, cell_vm_macro_expand_define,
      cell_vm_macro_expand_define_macro, cell_vm_macro_expand_lambda,
      cell_vm_macro_expand_set_x, cell_vm_return, cell_symbol_lambda,
      cell_symbol_begin, cell_symbol_if, cell_symbol_quote,
      cell_symbol_define, cell_symbol_define_macro, cell_symbol_quasiquote,
      cell_symbol_unquote, cell_symbol_unquote_splicing, cell_symbol_syntax,
      cell_symbol_quasisyntax, cell_symbol_unsyntax,
      cell_symbol_unsyntax_splicing, cell_symbol_set_x, cell_symbol_sc_expand,
      cell_symbol_macro_expand, cell_symbol_portable_macro_expand,
      cell_symbol_sc_expander_alist, cell_symbol_call_with_values,
      cell_symbol_call_with_current_continuation, cell_symbol_boot_module,
      cell_symbol_current_module, cell_symbol_primitive_load, cell_symbol_car,
      cell_symbol_cdr, cell_symbol_not_a_number, cell_symbol_not_a_pair,
      cell_symbol_system_error, cell_symbol_throw,
      cell_symbol_unbound_variable, cell_symbol_wrong_number_of_args,
      cell_symbol_wrong_type_arg, cell_symbol_buckets, cell_symbol_builtin,
      cell_symbol_frame, cell_symbol_hashq_table, cell_symbol_module,
      cell_symbol_procedure, cell_symbol_record_type, cell_symbol_size,
      cell_symbol_stack, cell_symbol_argv, cell_symbol_mes_datadir,
      cell_symbol_mes_version, cell_symbol_internal_time_units_per_second,
      cell_symbol_compiler, cell_symbol_arch, cell_symbol_pmatch_car,
      cell_symbol_pmatch_cdr, cell_type_bytes, cell_type_char,
      cell_type_closure, cell_type_continuation, cell_type_function,
      cell_type_keyword, cell_type_macro, cell_type_number, cell_type_pair,
      cell_type_port, cell_type_ref, cell_type_special, cell_type_string,
      cell_type_struct, cell_type_symbol, cell_type_values,
      cell_type_variable, cell_type_vector, cell_type_broken_heart,
      cell_symbol_program, cell_symbol_test): Likewise.
      * src/globals.c: New file.
      * build-aux/configure-lib.sh (mes_SOURCES): Add it.
      72e371d7
    • janneke's avatar
      guix: m2-planet: Update to 1.7.0-32-gaa3472b. · c18f2c0c
      janneke authored
      This adds support for skipping "extern".
      
      * guix/git/mes.scm (m2-planet)[source]: Update to 1.7.0-32-gaa3472b.
      c18f2c0c
  21. 09 Jan, 2021 3 commits
    • janneke's avatar
      scaffold: Add local-static-array.c. · 4ca839a0
      janneke authored
      GCC gives
      
          12:35:54 janneke@dundal:~/src/mes/wip-m2 [env]
          $ gcc scaffold/local-static-array.c
          12:36:01 janneke@dundal:~/src/mes/wip-m2 [env]
          $ ./a.out
          hello local static
          hello local static
          12:36:04 janneke@dundal:~/src/mes/wip-m2 [env]
      
      M2-Planet gives
      
          12:36:04 janneke@dundal:~/src/mes/wip-m2 [env]
          $ kaem --verbose --strict --file scaffold/local-static-array.kaem
           +> M2-Planet --debug --architecture x86 -f lib/mes/globals.c -f lib/linux/x86-mes-m2/mini.c -f lib/mes/mini-write.c -f lib/string/strlen.c -f lib/string/strcpy.c -f lib/mes/eputs.c -f scaffold/local-static-array.c -o scaffold/local-static-array.M1
          scaffold/local-static-array.c:29:static is not a defined symbol
          Subprocess error 256
          ABORTING HARD
          [1]12:36:07 janneke@dundal:~/src/mes/wip-m2 [env]
      
      * scaffold/local-static-array.c: New file.
      * scaffold/local-static-array.kaem: New file.
      4ca839a0
    • janneke's avatar
      scaffold: Add local-array.c. · 9ddb4389
      janneke authored
      GCC gives
      
          12:32:06 janneke@dundal:~/src/mes/wip-m2 [env]
          $ gcc scaffold/local-array.c
          12:34:27 janneke@dundal:~/src/mes/wip-m2 [env]
          $ ./a.out
          hello local
          12:34:31 janneke@dundal:~/src/mes/wip-m2 [env]
      
      M2-Planet gives
      
          12:34:31 janneke@dundal:~/src/mes/wip-m2 [env]
          $ kaem --verbose --strict --file scaffold/local-array.kaem
           +> M2-Planet --debug --architecture x86 -f lib/mes/globals.c -f lib/linux/x86-mes-m2/mini.c -f lib/mes/mini-write.c -f lib/string/strlen.c -f lib/string/strcpy.c -f lib/mes/eputs.c -f scaffold/local-array.c -o scaffold/local-array.M1
          scaffold/local-array.c:29:ERROR in collect_local
          Missing ;
          Subprocess error 256
          ABORTING HARD
          [1]12:34:42 janneke@dundal:~/src/mes/wip-m2 [env]
      
      * scaffold/local-array.c: New file.
      * scaffold/local-array.kaem: New file.
      9ddb4389
    • janneke's avatar
      scaffold: Add global-array.c. · e6bfaae2
      janneke authored
      GCC gives
      
          12:30:45 janneke@dundal:~/src/mes/wip-m2 [env]
          $ gcc scaffold/global-array.c
          12:31:53 janneke@dundal:~/src/mes/wip-m2 [env]
          $ ./a.out
          hello global
          12:31:54 janneke@dundal:~/src/mes/wip-m2 [env]
      
      M2-Planet gives
      
          12:31:54 janneke@dundal:~/src/mes/wip-m2 [env]
          $ kaem --verbose --strict --file scaffold/global-array.kaem
           +> M2-Planet --debug --architecture x86 -f lib/mes/globals.c -f lib/linux/x86-mes-m2/mini.c -f lib/mes/mini-write.c -f lib/string/strlen.c -f lib/string/strcpy.c -f lib/mes/eputs.c -f scaffold/global-array.c -o scaffold/global-array.M1
          scaffold/global-array.c:20:Received [ in program
          Subprocess error 256
          ABORTING HARD
          [1]12:32:06 janneke@dundal:~/src/mes/wip-m2 [env]
      
      * scaffold/global-array.c: New file.
      * scaffold/global-array.kaem: New file.
      e6bfaae2
  22. 01 Jan, 2021 1 commit
  23. 02 Jan, 2021 1 commit
    • janneke's avatar
      Revert "Mes C Library: m2/execve.c: Remove specialization." · 9c2ba482
      janneke authored
      This fixes
      
          gcc-lib/libc+gnu.c: At top level:
          gcc-lib/libc+gnu.c:2694:1: error: conflicting types for ‘execve’
           execve (char const *file_name, char **argv, char **env)
           ^~~~~~
          In file included from gcc-lib/libc+gnu.c:492:0:
          include/unistd.h:66:5: note: previous declaration of ‘execve’ was here
           int execve (char const *file, char *const argv[], char *const env[]);
               ^~~~~~
      
      This reverts commit 828c27a0.
      9c2ba482
  24. 01 Jan, 2021 3 commits