1New features with AN-2018-03-01: 2 3This is the first localization step for the schily source consolidation. Many 4programs now (hopefully) call gettext() for all strings that need localization. 5 6- The next step will include dgettext() calls for the libraries and the 7 missing programs 8 9- The following step will include the extracted strings 10 11- The last step will include German translations and install support 12 for the resulting binary message object files. 13 14----------> Please test and report compilation problems! <--------- 15 16***** NOTE: As mentioned since 2004, frontends to the tools should ***** 17***** call all programs in the "C" locale ***** 18***** by e.g. calling: LC_ALL=C cdrecord .... ***** 19***** unless these frontends support localized strings ***** 20***** used by the cdrtools with NLS support. ***** 21 22 *** WARNING *** 23 *** Need new smake *** 24 25 *** Due to the fact that schily-tools 2014-04-03 introduced to use new macro 26 *** expansions and a related bug fix in smake, you need a new smake 27 *** to compile this source. If your smake is too old and aborts, ensure this 28 *** by calling: 29 30 cd ./psmake 31 ./MAKE-all 32 cd .. 33 psmake/smake 34 psmake/smake install 35 36 *** Due to the fact that schily-tools 2014-01-26 introduced 37 *** optimizations for the Schily version of SunPro Make, you 38 *** need at least the dmake version from 2018/01/11 with support 39 *** for the "export" directive to compile with this makefile system. 40 41 42 WARNING: the new version of the isoinfo program makes use of the 43 *at() series of functions that have been introduced by Sun 44 in August 2001 and added to POSIX.1-2008. For older platforms, 45 libschily now includes emulations for these functions but 46 these emulations have not yet been tested thoroughly. 47 Please report problems! 48 49 The new smake version mentioned above is smake-1.2.4 50 51 52- Schily makefilesystem: fixed the script "conf/cc-config.sh" 53 "make CCOM=gcc32" now correctly remembers "DEFCCOM=gcc32" in the 54 file "incs/Dcc*". 55 56 This is needed in order to make "make tests" able to find the just 57 compiled Bourne Shell and to use this binary for testing. 58 59- README.compile: A hint to the file "BOOTSTRAP" has been added. 60 61- BOOTSTRAP: A hint to the new file "dos_make.bat" has been added. 62 63- libschily: searchinpath.c now frees the right pointer on DJGPP. 64 Thanks to a patch from Juan M. Guerrero. 65 66- libschily: USE_WCTYPE is now auto-detected in a different way: 67 It is now enabled for HP-UX-10.x and disabled for DJGPP. 68 This is done in schily/wctype.h 69 70- libschily: wctype() and iswctype() now have fallback prototypes 71 for the libschily fallback implementation. 72 This is done in schily/wchar.h 73 74- libscg: the linker map file did not contain an entry for scg_opts() 75 that has been introduced in January 2016. As a result, it was not 76 possible to link SCG users dynamically against "libscg". 77 78- smake: A new fallback SHELL path for DJGPP has been added to 79 smake/job.c and is: "/dev/env/DJDIR/bin/sh.exe" 80 81- smake: (psmake) the script "dos_make.bat" from the separate smake 82 tar archive has been added to schilytools in order to allow to 83 bootstrap schilytools in a DJGPP environment. 84 85- Bourne Shell: The builtin "repeat" command is now terminated in 86 case that a called (repeated) command is terminated by a signal. 87 88- patch: An access behind a buffer in the date string parsing routine 89 has been identified by "AddressSanitizer" and fixed in the code. 90 91- SunPro Make: A new function skip_comment() has been created in order 92 to avoid copy/paste code. 93 94- SunPro Make: Never versions of the OpenSolaris linker may switch 95 to the 64 bit Binary and in thich case, the env variable SGS_SUPPORT 96 may not hav a slash character in it's value. 97 98 SunPro Make now creates SGS_SUPPORT_32 and SGS_SUPPORT_64 entries in 99 such a case. 100 101- SunPro Make: The man page now mentions the SGS_SUPPORT, SGS_SUPPORT_32, 102 SGS_SUPPORT_64, and SUNPRO_DEPENDENCIES environment variables. 103 104- SCCS log command: Avoid a coredump with "sccs -R log" from a 105 directory that does not include a SCCS directory. 106 107- sformat: A new option -randv has been added. This option behaves 108 similar to -randrw but does not write to the disk and thus is less 109 harmful to already impaired disks. 110 111- sformat: The random tests now use drand48(). This is needed in order 112 to get a sufficient coverage for modern large disks. 113 114- patch: /dev/null is no longer subject to path name stripping with 115 the -p option. This is needed in order to be able to support 116 mercurial patch files. 117 118- patch: If /dev/null is seen as filename in the diff headers, there 119 is no longer a memory leak. 120 121- patch: A typo was fixed that prevented patch in (extended mode) to 122 automatically remove zero sized result files that are marked with 123 Jan 1 1970 00:00:00 UTC without the need for the option -E. 124 This is only done in the "Wall+" mode of patch. 125 126- patch: The name "spatch" now defaults to POSIX behavior plus all 127 extensions (POSIX + Wall+). Before, it was strict POSIX mode. 128 129- patch: New function fetchtz() allows to support the old "ctime()" 130 based time format from "diff -c" to use a timezone as e.g. with 131 patchfiles created by "hg export". 132 133- patch: The nanosecond field from the "diff -u" output is now parsed. 134 135- patch: The time parsing code has been rewritten to use the struct 136 dtime concept from SCCS. 137 138- patch: The original patch from Larry Wall contained broken code 139 to work around when -p # could not strip off # directories but 140 the full name in the diff header existed. This code works now 141 as intended. 142 143- patch: New options -T and -Z allow to tell patch to restore the 144 timestamps from the patched files from the related comment field 145 in the patch data. This gives more compatibility to GNU patch. 146 147- patch conformance tests: The -T / -Z option has been added to the 148 usage test. 149 150- patch: Is now using release 3.2. 151 152 153- Bourne Shell Missing features for POSIX compliance: 154 155 - Support for $'...' quoting (this is not needed for the current 156 version of POSIX but for the next POSIX 157 version that will be named SUSv8). 158 The development of SUSv8 will start in 159 late 2016. 160 161 We are now expecting the Bourne Shell to be fully POSIX compliant. 162 163- Bourne Shell further TODO list: 164 165 - Finish loadable builtin support. 166 167 - POSIX does not allow us to implement ". -h", so we will 168 add a "source" builtin to be able to implement "source -h" 169 170- The following builtins (that are available in bsh) are still missing in 171 the Bourne Shell: 172 173 err echo with output going to stderr 174 glob echo with '\0' instead of ' ' between args 175 env a builtin version of /usr/bin/env 176 177 The following bsh intrinsics are still missing in the Bourne Shell: 178 179 - the restricted bsh has restriction features that 180 are missing in the Bourne shell. 181 182 - source -h read file into history but do not execute 183 184 and probably more features not yet identified to be bsh unique. 185 186 187 188Author: 189 190Joerg Schilling 191D-13353 Berlin 192Germany 193 194Email: joerg@schily.net, js@cs.tu-berlin.de 195 joerg.schilling@fokus.fraunhofer.de 196 197Please mail bugs and suggestions to me. 198