1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

lang/seed7: update to 05_20200502

20200502:
- As suggested by Zachary Menzies a detection of more modifier keys has
  been added. E.g.: KEY_SHIFT_LOCK and KEY_NUM_LOCK. These modifier
  keys have a state. The state of KEY_SHIFT_LOCK can be retrieved with
  buttonPressed(KEYBOARD, KEY_SHIFT_LOCK_ON).
- Several new keys and key combinations such as KEY_PRINT, KEY_PAUSE,
  KEY_ALT_LEFT and KEY_SFT_MENU have been added to keybd.s7i. Existing
  definitions in keybd.s7i have been refactored. Key names in
  keydescr.s7i have been updated.
- The program gkbd.sd7 has been improved to show the new capabilies of
  the keybord interface.
- The bas7.sd7 (basic interpreter) example program has been improved.
  Support for the predefined subprograms CHAR, CLEAR, COLOR, HCHAR,
  KEY, SCREEN and VCHAR and for the function SEG$ has been added.
- The bitmap font font8x8 has been added. This is a font with 8x8 pixel
  used by the TI-99/4A homecomputer.
- The functions line() and column() have been added to pixmap_file.s7i.
- The function replace1() has been added to string.s7i.
- In the manual the chapters about types and the keyboard have been
  improved.
- The compiler has been improved to link database libraries only if
  they are needed.
- The compiler has been improved to use builtin functions of the C
  compiler (if available) to do integer overflow checks. This reduces
  the runtime of the xz (lzma2) decompression by 4% (measured with gcc
  and valgrind, when decompressing a binary Seed7 package).
- The compiler has been improved to use a better approach to test for
  integer overflow of addition and subtraction, if no builtin functions
  are available. This reduces the runtime of the xz (lzma2)
  decompression by 0.8% (measured with gcc and valgrind, when
  decompressing a binary Seed7 package).
- The compiler has been improved to optionally suppress the generation
  of checks for integer division by zero with the option -sd.
- The simple function profiling of the Seed7 compiler has been improved
  to write the place and the name of the Seed7 function and to avoid
  a C compiler error about "too many initializers".
- The compiler has been improved to write a warning if there is a catch
  statement for an exception although the checks for this exception
  have been suppressed (with the option -s).
- The compiler has been improved to work correct for all corner cases
  of the string operations [, mult and @:=.
- Testcases for the operators [, mult and @:= and for the functions
  pos() and rpos() have been added to chkstr.sd7.
- Testcases for the exception RANGE_ERROR have been added to
  chkbig.sd7. The function bigInteger() and the operators radix, RADIX
  and parse are checked now, if they correctly raise RANGE_ERROR.
- Testcases for the exception RANGE_ERROR have been added to
  chkint.sd7. The functions bytes() and integer() and the operators
  radix, RADIX, sci and parse are checked now, if they correctly raise
  RANGE_ERROR.
- Testcases for the exception NUMERIC_ERROR have been added to
  chkint.sd7. The operators div, rem, mdiv, mod and ** are checked
  now, if they correctly raise NUMERIC_ERROR.
- A lot of testcases has been added to chkint.sd7 and chkovf.sd7 in
  the function check_reduced_overflow_checking_for_sums().
- In comp/big_act.s7i the function process_const_big_ipow has been
  improved to allow that the check for a negative exponent can be
  optionally omitted.
- In chkovf.sd7 the checks for the operators rem and mod have been
  improved to allow that the operators return the correct result
  instead of raising OVERFLOW_ERROR.
- Index access in comp/str_act.s7i and comp/bst_act.s7i has been
  improved to work also for the index integer.first (now the index is
  casted to (unsigned) and afterwards 1 is subtracted).
- In comp/intrange.s7i the function getIntRange has been improved to
  return better ranges for INT_ABS and INT_NEGATE.
- The keyboard driver gkb_x11.c has been improved to support new keys
  and key combinations. Additionally the modifier state is synched now
  with the keypresses. This allows reading a modifier key state (e.g.
  (control has been pressed) from the moment when the main key (e.g.
  the letter A) was pressed.
- The program chkccomp.c has been improved to determine the values
  CHECK_INT_DIV_ZERO_BY_ZERO, HAS_BUILTIN_OVERFLOW_OPERATIONS and
  SYSTEM_DATABASE_LIBS. The logic to determine the values
  CHECK_INT_DIV_BY_ZERO, CHECK_INT_REM_BY_ZERO and
  CHECK_INT_REM_ZERO_BY_ZERO has been improved.
- The configuration value CHECK_INT_DIV_ZERO_BY_ZERO,
  BUILTIN_ADD_OVERFLOW, BUILTIN_SUB_OVERFLOW, BUILTIN_MULT_OVERFLOW
  and SYSTEM_DATABASE_LIBS have been added to cc_conf.s7i, confval.sd7
  and cmd_rtl.c.
- Documentation comments have been added or improved in cc_conf.s7i,
  encoding.s7i, gzip.s7i, lzma.s7i, pixmap_file.s7i, scanfile.s7i,
  sql_base.s7i, string.s7i, xz.s7i, sigutl.c and striutl.c.

20200405:
- The new library xz.s7i has been added. This library supports XZ
  compressed files.
- The new library lzma.s7i has been added. This library supports LZMA
  compressed files.
- The library rpm.s7i has been improved to support an XZ compressed
  payload.
- The library tar_cmds.s7i and the program tar7.s7i have been improved
  to support XZ and LZMA compressed tar archives.
- The library zip.s7i has been improved to support Unicode file names.
- As suggested by Zachary Menzies a detection of modifier keys has been
  added. E.g. buttonPressed(KEYBOARD, KEY_SHIFT). Additionally several
  new key combinations such as KEY_SFT_MOUSE1 and KEY_CTL_PAD_CENTER
  have been added to keybd.s7i.
- The program gkbd.sd7 has been improved to show the new capabilies of
  the keybord interface.
- Interpreter and compiler have been improved, to write a compile time
  error, if a numerical escape sequence in a string or char literal
  is too big.
- The compiler has been improved to omit overflow checks for the
  dividend of the mod operator, if the divisor is a power of two. This
  reduces the runtime of the xz (lzma2) decompression by 2.3% (measured
  with gcc and valgrind, when decompressing a binary Seed7 package).
- The compiler file comp/intrange.s7i has been added. This file defines
  the function getIntRange(), which computes the range of possible
  results for several operators (e.g.: div, rem, mdiv, mod, >>) and
  functions (e.g.: sqrt, length, pos, rand, log).
- The compiler has been improved to use the function getIntRange() to
  omit overflow checks for addition, subtraction, multiplication and
  left shift of integer values. This reduces the runtime of the xz
  (lzma2) decompression by 0.4% (measured with gcc and valgrind, when
  decompressing a binary Seed7 package).
- In the compiler the code generation for the operators div, rem, mdiv,
  mod, * and << has been improved to work without catching the
  exception OVERFLOW_ERROR.
- The compiler has been improved to allow that a range check is
  suppressed with -sr for the action FLT_BITS2SINGLE (convert integer
  to single precision float value).
- The compiler has been improved to generate code that writes the error
  message of a DATABASE_ERROR, if the exception is uncatched.
- The compiler has been improved to suppress the usage of the C
  compiler option CC_OPT_TRAP_OVERFLOW (-ftrapv), if the Seed7 compiler
  option -so (suppress overflow checks) is used.
- The makefiles mk_clang.mak, mk_clangw.mak and mk_osxcl.mak have been
  improved to define CC_OPT_TRAP_OVERFLOW with the value -ftrapv.
- The functions check_mod_by_power_of_two_optimization() and
  check_mod_by_computed_power_of_two_optimization() have been added
  to chkint.sd7. This functions check the mod operator regarding
  the new compiler optimization for the mod dividend.
- The functions check_reduced_overflow_checking_for_sums(),
  check_reduced_overflow_checking_for_mult() and
  check_reduced_overflow_checking_for_lshift() have been added to
  chkint.sd7 and chkovf.sd7. This functions test the compiler
  optimization to reduce overflow checking with getIntRange().
- The libraries aes.s7i, bitdata.s7i, color.s7i, deflate.s7i, draw.s7i,
  ico.s7i, msgdigest.s7i, pkcs1.s7i, showtls.s7i and utf16.s7i have
  been improved to use the division operators 'mdiv' and 'mod' instead
  of 'div' and 'rem'.
- The configuration value CC_OPT_TRAP_OVERFLOW has been introduced in
  cc_conf.s7i, confval.sd7, s7c.sd7, chkccomp.c, cmd_rtl.c and
  read_me.txt.
- The function write_exception_info() has been added to runerr.c. This
  function is called in executl.c.
- The keyboard drivers gkb_win.c and gkb_x11.c have been improved to
  support modifier keys and more key combinations.
- Definitions for 31 new key compinations and 9 modifier keys have
  been added to keybd.s7i and keydescr.s7i.
- Documentation comments have been improved in ar.s7i, cc_conf.s7i
  and csv.s7i.
This commit is contained in:
Pietro Cerutti 2020-05-06 15:59:09 +00:00
parent 37bbe8c3aa
commit 2d20eca127
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=534184
4 changed files with 14 additions and 38 deletions

View File

@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= seed7
DISTVERSION= 05_20200308
DISTVERSION= 05_20200502
PORTREVISION= 0
CATEGORIES= lang
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTNAME}/

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1583750904
SHA256 (seed7_05_20200308.tgz) = 72ca9a0e8225dc8cfec9d59f3884ea6c3ca9fc5a5a11eade3b86acbc65bf62fd
SIZE (seed7_05_20200308.tgz) = 3225717
TIMESTAMP = 1588759491
SHA256 (seed7_05_20200502.tgz) = 4244fa0c3b45cc471ad87be63c3dfa835d1ff0cec94a692424bc79c02cc8078b
SIZE (seed7_05_20200502.tgz) = 3301503

View File

@ -1,37 +1,9 @@
--- mk_freebsd.mk.orig 2019-12-06 15:03:22 UTC
+++ mk_freebsd.mk
@@ -41,14 +41,14 @@ ALL_S7_LIBS = ../bin/$(COMPILER_LIB) ../bin/$(COMP_DAT
GET_CC_VERSION_INFO = $(CC) --version >
TERMINFO_OR_TERMCAP = USE_TERMINFO
-CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_inf.o trm_inf.o
-CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_inf.c trm_inf.c
+# CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_inf.o trm_inf.o
+# CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_inf.c trm_inf.c
# TERMINFO_OR_TERMCAP = USE_TERMCAP
# CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_inf.o trm_cap.o
# CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_inf.c trm_cap.c
# TERMINFO_OR_TERMCAP = USE_TERMINFO
-# CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_poll.o trm_inf.o
-# CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_poll.c trm_inf.c
+CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_poll.o trm_inf.o
+CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_poll.c trm_inf.c
# TERMINFO_OR_TERMCAP = USE_TERMCAP
# CONSOLE_LIB_OBJ = kbd_rtl.o con_inf.o kbd_poll.o trm_cap.o
# CONSOLE_LIB_SRC = kbd_rtl.c con_inf.c kbd_poll.c trm_cap.c
@@ -84,7 +84,7 @@ DOBJ = big_rtl.o big_gmp.o cmd_unx.o dir_win.o dll_unx
OBJ = $(MOBJ)
SEED7_LIB_OBJ = $(ROBJ) $(DOBJ)
DRAW_LIB_OBJ = gkb_rtl.o drw_x11.o gkb_x11.o fwd_x11.o
-DATABASE_LIB_OBJ = sql_base.o sql_db2.o sql_fire.o sql_lite.o sql_my.o sql_oci.o sql_odbc.o sql_post.o sql_srv.o
+DATABASE_LIB_OBJ = sql_base.o sql_db2.o sql_fire.o sql_lite.o sql_my.o sql_oci.o sql_odbc.o sql_post.o sql_srv.o sql_tds.o
COMP_DATA_LIB_OBJ = typ_data.o rfl_data.o ref_data.o listutl.o flistutl.o typeutl.o datautl.o
COMPILER_LIB_OBJ = $(POBJ) $(LOBJ) $(EOBJ) $(AOBJ) $(GOBJ)
@@ -168,6 +168,7 @@ chkccomp.h:
echo "#define POSTGRESQL_LIBRARY_PATH \"-L%%LOCALBASE%%/lib\"" >> chkccomp.h
echo "#define ODBC_INCLUDE_OPTIONS \"-I%%LOCALBASE%%/include\"" >> chkccomp.h
echo "#define ODBC_LIBRARY_PATH \"-L%%LOCALBASE%%/lib\"" >> chkccomp.h
--- mk_freebsd.mk.orig 2020-04-15 07:58:59.000000000 +0000
+++ mk_freebsd.mk 2020-05-06 10:16:02.032695000 +0000
@@ -154,6 +154,7 @@
echo "#define SQL_SERVER_LIBRARY_PATH \"-L%%LOCALBASE%%/lib\"" >> chkccomp.h
echo "#define TDS_INCLUDE_OPTIONS \"-I%%LOCALBASE%%/include\"" >> chkccomp.h
echo "#define TDS_LIBRARY_PATH \"-L%%LOCALBASE%%/lib\"" >> chkccomp.h
+ echo "#define X11_LIBRARY_PATH \"%%LOCALBASE%%/lib\"" >> chkccomp.h
version.h: chkccomp.h

View File

@ -64,6 +64,7 @@ lib/seed7/lib/comp/gkb_act.s7i
lib/seed7/lib/comp/hsh_act.s7i
lib/seed7/lib/comp/inline.s7i
lib/seed7/lib/comp/int_act.s7i
lib/seed7/lib/comp/intrange.s7i
lib/seed7/lib/comp/itf_act.s7i
lib/seed7/lib/comp/kbd_act.s7i
lib/seed7/lib/comp/library.s7i
@ -111,6 +112,7 @@ lib/seed7/lib/filebits.s7i
lib/seed7/lib/filesys.s7i
lib/seed7/lib/float.s7i
lib/seed7/lib/font.s7i
lib/seed7/lib/font8x8.s7i
lib/seed7/lib/forloop.s7i
lib/seed7/lib/ftp.s7i
lib/seed7/lib/ftpserv.s7i
@ -143,6 +145,7 @@ lib/seed7/lib/line.s7i
lib/seed7/lib/listener.s7i
lib/seed7/lib/logfile.s7i
lib/seed7/lib/lower.s7i
lib/seed7/lib/lzma.s7i
lib/seed7/lib/lzw.s7i
lib/seed7/lib/mahjng32.s7i
lib/seed7/lib/make.s7i
@ -221,6 +224,7 @@ lib/seed7/lib/wrinum.s7i
lib/seed7/lib/x509cert.s7i
lib/seed7/lib/xml_ent.s7i
lib/seed7/lib/xmldom.s7i
lib/seed7/lib/xz.s7i
lib/seed7/lib/zip.s7i
man/man1/s7.1.gz
man/man1/s7c.1.gz