1New features with AN-2017-12-08: 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. To ensure this, call: 28 29 cd ./psmake 30 ./MAKE-all 31 cd .. 32 psmake/smake 33 psmake/smake install 34 35 36 WARNING: the new version of the isoinfo program makes use of the 37 *at() series of functions that have been introduced by Sun 38 in August 2001 and added to POSIX.1-2008. For older platforms, 39 libschily now includes emulations for these functions but 40 these emulations have not yet been tested thoroughly. 41 Please report problems! 42 43 The new smake version mentioned above is smake-1.2.4 44 45- The Schily Makefilesystem now uses .PHONY again (and no longer "FRC") 46 unless the make program was identified as an old unfixed "SunPro Make" 47 from Sun or Oracle. 48 49- README.compile now better explains that CCOM= does not just set the 50 C-compiler but the compiler family that includes a C++ compiler. 51 52- include/schily/archdefs.h: With Sun Studio-12.4 on Oracle Solaris-11.2, 53 we had a problem with __SUNPRO_C and needed to change it to __IS_SUNPRO_C 54 55 Thanks to Jens Elkner for reporting. 56 57- libschily::format.3 the man page for the printf worker function now menions 58 the new fomats %E %F %G 59 60- Bourne Shell test suite: Some problems in the printf(1) tests have 61 been fixed. 62 63 - \n inside "" is now properly quoted in order to let printf 64 do the \n expansion 65 66 - LC_ALL=C -> LC_ALL=C; export LC_CLL in order to permit 67 to use the test suite to check floating point behavior 68 in an external printf(1) implementation as well. 69 70- Bourne Shell and printf: the man pages now mention the new 71 %n$ formats 72 73- Bourne Shell: cbuf[] in print.c::prs_cntl() was made 4 chars longer to 74 avoid a buffer overflow from calling octal() that inserts 4 characters 75 at once. 76 77 Thanks to Heiko Ei�deldt for reporting. 78 79- Bourne Shell: The lexer now always correctly adds a second Nul byte after 80 a "\\\0" sequence. This prevents split()/trims() from reading past the 81 end of a string. 82 83 Thanks to Heiko Ei�deldt for reporting. 84 85- Bourne Shell: The PATH search mechanism now always correctly adds a 86 second Nul byte after a "\\\0" sequence. This prevents split()/trims() 87 from reading past the end of a string. 88 89 Thanks to Heiko Ei�deldt for reporting. 90 91- Bourne Shell: As a hack to the problem from above, the shell now adds a 92 second Nul byte after every string that is remembered for a function 93 definition. 94 95- Bourne Shell: "command <spec-builtin>" did not prevent a script 96 from exiting on errors in case that before: 97 98 - the same <spec-builtin> was called to pring it into 99 the hash list. 100 101 - "hash -r" or PATH=.... was called to zap the hash content. 102 103 Thanks to Martijn Dekker for reporting. 104 105- Bourne Shell: prevent an illegal heap access in case that a command name 106 ends in a backslash. The function catpath() in the PATH search code 107 not adds a second Nul byte in this case. 108 109 Thanks to Heiko Ei�deldt for reporting. 110 111- Bourne Shell: the arithmetic expansion for $(()) has been rewritten 112 to be able to deal with syntax errors while the shell is in a 113 non-exit-on-error state. 114 115 Thanks to Heiko Ei�deldt for reporting. 116 117- Bourne Shell: the macro expansion has been rewritten to return early from 118 an error when on a non-exit-on-error state. 119 120 Thanks to Heiko Ei�deldt for reporting. 121 122- Bourne Shell: Fixed a bug in the endstak() function for string stak handling. 123 In rare cases, the function could allocate one byte too few. 124 125 Thanks to Heiko Ei�deldt for reporting. 126 127- SunPro Make: Oracle Solaris-11.2 hides wcsdup() behind "namespace std". 128 We need to add "using namespace std" to make it compile again. 129 130- SunPro Make: The make program now also sets SGS_SUPPORT_32 and 131 SGS_SUPPORT_64 in case that at least one of these variables was set 132 before "make" started. Previously only SGS_SUPPORT was set and for this 133 reason, our setup could be ignored. 134 135- SunPro Make: Support for the special target .PHONY has been added. 136 137- SunPro Make: The new macro MAKE_NAME=sunpro is no longer visible in 138 case that the make prigram is in Sun compatibility mode or in SVr4 139 compatibility mode. 140 141- cdda2wav: It is also Copyright 2017 Heiko Ei�feldt 142 143- cdrtools:bumped to version 3.02a09 144 145 146 147- Bourne Shell Missing features for POSIX compliance: 148 149 - Support for $'...' quoting (this is not needed for the current 150 version of POSIX but for the next POSIX 151 version that will be named SUSv8). 152 The development of SUSv8 will start in 153 late 2016. 154 155 We are now expecting the Bourne Shell to be fully POSIX compliant. 156 157- Bourne Shell further TODO list: 158 159 - Finish loadable builtin support. 160 161 - POSIX does not allow us to implement ". -h", so we will 162 add a "source" builtin to be able to implement "source -h" 163 164- The following builtins (that are available in bsh) are still missing in 165 the Bourne Shell: 166 167 err echo with output going to stderr 168 glob echo with '\0' instead of ' ' between args 169 env a builtin version of /usr/bin/env 170 171 The following bsh intrinsics are still missing in the Bourne Shell: 172 173 - the restricted bsh has restriction features that 174 are missing in the Bourne shell. 175 176 - source -h read file into history but do not execute 177 178 and probably more features not yet identified to be bsh unique. 179 180 181 182Author: 183 184Joerg Schilling 185D-13353 Berlin 186Germany 187 188Email: joerg@schily.net, js@cs.tu-berlin.de 189 joerg.schilling@fokus.fraunhofer.de 190 191Please mail bugs and suggestions to me. 192