1New features with AN-2018-04-05: 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- Schily Makefilesystem: $(PREINSDIR) was added to the install target 52 path for more flexibility. 53 54- Schily.Copyright: Updated Copyright dates. 55 Added information for the programs "cstyle", "isaexec", "libboshcmd", 56 "libdbgmalloc", "osh", "tests". 57 58- conf/cc-config.sh The version from Ferbruary 1 2018 has issues: 59 clang has not been correctly discovered on FreeBSD 60 gcc on Ubunto has no longer been correctly discovered 61 62- include/schily/mconfig.h: As part of the schily portability 63 framework now includes code to auto-detect GCC and Clang with 64 enabled Address Sanitizer. 65 66- libschily: handlecond()/raisecond() now use the fallback implementation 67 when the code is compiled with Address Sanitizer support enabled. This 68 is needed as handlecond() marks the saved framepointer on the stack 69 in order to install a software signal handler. 70 71 Thanks to Heiko Ei�feldt for reporting. 72 73- libschily: getfp() is automatically disabled when the code is compiled 74 with Address Sanitizer support enabled. 75 76 Thanks to Heiko Ei�feldt for reporting. 77 78- libschily: dlerror() emulation: the POSIX standard defies it as: 79 80 char *dlerror() 81 82 but we had const char *dlerror() 83 84 Thanks to Heiko Ei�feldt for reporting. 85 86- libschily: match.c could access data past the end of a string in case 87 that the pattern was illegal (e.g. "[0-]"). We now no longer treat 88 '-' special in case that it appears at the end of a set pattern. 89 90 Thanks to Heiko Ei�feldt for reporting. 91 92- ved/bsh/libshedit: map.c did dereference a NULL pointer in case that 93 someone tried to delete a mapping when no mapping exists. 94 95 Thanks to Heiko Ei�feldt for reporting. 96 97- bsh: A file with the content "if 0" did cause the shell to try to access 98 lp[-1] in cond.c 99 100 Thanks to Heiko Ei�feldt for reporting. 101 102- bsh: A file with the content "#!" did cause the shell to try to 103 dereference a NULL pointer. 104 105 Thanks to Heiko Ei�feldt for reporting. 106 107- bsh: the own malloc() implementation is now automatically disabled when 108 compiling with Address Sanitizer support enabled. This is needed as the 109 address sanitizer replaces malloc() with an own implementation that is 110 in conflict with out malloc() implementation. 111 112 Thanks to Heiko Ei�feldt for reporting. 113 114- smake: The inline "echo" implementation did not correctly parse the 115 command line. 116 117 Thanks to Steffen Nurpmeso for reporting. 118 119- star: A new message "Badly formed number '%s'.\n" has been introduced to 120 help to identify illegal arguments to complex options like fs=. 121 122- star: The man page has been enhanced in order to reduce the chance 123 to missunderstand descriptions. 124 125- hdump: The od(1) man page from OpenSolaris has been integrated since our 126 hdump implementation has been enhanced in 2010 in order to replace the 127 closed source od implementation from OpenSolaris. 128 129- hdump: The hdump(1) man page now mentions the options -C, -O, -s, -S, 130 -x, -X and better deals with the object size. 131 132- hdump: "od file1 123 file2" no longer believes file2 is the hdump 133 "count", but rather tries to display three files: "file1", "123", "file2" 134 as required by "od. 135 136- hdump: When in hdump mode, a simple "starting offset" number no longer 137 switches the radix to octal, but leaves the address radix hexadecimal 138 and interprets the "starting offset" as decimal. 139 140- smake: The builtin optimization for "echo" in smake needs to understand 141 where a echo command ends in a semicolon, but this detection did 142 incorrectly hit inside a "" or '' string and send the parts to the 143 right of the semocolon to the shell. 144 145 Thanks to Steffen Nurpmeso for reporting. 146 147- cdrecord: The version date was added to the cdrecord -version output 148 149- cdda2wav: The version date was added to the cdda2wav -version output 150 151- mkisofs: The version date was added to the mkisofs -version output 152 153- mkisofs: a possible core dump with code conversion for Joliet has 154 been fixed. The bug has been introduced with schilytools--2018-01-26 155 156 Thanks to Jan Engelhardt <jengelh@inai.de> (SuSE) for reporting. 157 158- SunPro Make: Some printf() arguments have been removed that have been 159 left over by Sun Microsystems from a former code restructuring. 160 161- SunPro Make: The return code from getcwd() is now evaluated. 162 163- SunPro Make: The man page now mentions that the current version 164 of make forwards command line macros to sub-makes. 165 166- SunPro Make: Added an unneeded D_NONE case label to make clang quiet. 167 168- SCCS: The SCCS help file installation now makes use of the new 169 makefile feature $(PREINSDIR). 170 171- SCCS: The SCCS binaries installation now makes use of the new 172 makefile feature $(PREINSDIR). 173 174- SCCS: The help program now also auto expands help messages for own 175 malfunctions. 176 177- SCCS: The sccs-help.1 man page now explains the algorithm, the 178 way localization works and how the file /usr/ccs/lib/help/helploc 179 works. 180 181- SCCS: The sccs-get.1 man page now includes the fallback PATH for the 182 &sccs.include.filename% keyword directive. 183 184- SCCS: all commands: SCCS_HELP_PRE and SCCS_BIN_PRE are now used for 185 external files and for searching the locale definition files. 186 187- SCCS: README.SCCS now mentions the new make command line macro options 188 SCCS_HELP_PRE and SCCS_BIN_PRE. See $(PREINSDIR) above. 189 190- SCCS: unit tests now honor SCCS_BIN_PRE. 191 192 193 194- Bourne Shell Missing features for POSIX compliance: 195 196 - Support for $'...' quoting (this is not needed for the current 197 version of POSIX but for the next POSIX 198 version that will be named SUSv8). 199 The development of SUSv8 will start in 200 late 2016. 201 202 We are now expecting the Bourne Shell to be fully POSIX compliant. 203 204- Bourne Shell further TODO list: 205 206 - Finish loadable builtin support. 207 208 - POSIX does not allow us to implement ". -h", so we will 209 add a "source" builtin to be able to implement "source -h" 210 211- The following builtins (that are available in bsh) are still missing in 212 the Bourne Shell: 213 214 err echo with output going to stderr 215 glob echo with '\0' instead of ' ' between args 216 env a builtin version of /usr/bin/env 217 218 The following bsh intrinsics are still missing in the Bourne Shell: 219 220 - the restricted bsh has restriction features that 221 are missing in the Bourne shell. 222 223 - source -h read file into history but do not execute 224 225 and probably more features not yet identified to be bsh unique. 226 227 228 229Author: 230 231Joerg Schilling 232D-13353 Berlin 233Germany 234 235Email: joerg@schily.net, js@cs.tu-berlin.de 236 joerg.schilling@fokus.fraunhofer.de 237 238Please mail bugs and suggestions to me. 239