1New features with AN-2017-05-16: 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- autoconf/config.guess now groks Cygwin with amd64 on NT-10. 46 47 Thanks to Thomas Plank for reporting. 48 49- autoconf got a new test for closefrom(). This helps to close all files 50 from a certain fd on Solaris and recent BSDs. 51 52- RULES/rules.top: we now clear the macro COMPILE.cc= from SunPro make 53 as well, in order to get our definition from the Schily Makefilesystem. 54 Before, when using SunPro Make, C++ code was compiled without enabling 55 the optimizer, as the SunPro Make default rule definition was used. 56 57- RULES/: Since SunPro Make from Schilytools now supports multiple 58 includes with a single include directive, we added a new configuration 59 for a SunPro Make that itself identifies now as "sunpro" via MAKE_NAME. 60 61- SunPro Make: removed an "auto" keyword in lin/bsd/src/bsd.cc 62 as g++ 6.3 uses a new incompatible definition for "auto". The new 63 incompatible definitin for "auto" was introduced by the new C++ 64 standard. 65 66 Thanks to Heiko Ei�feldt for reporting. 67 68- SunPro Make: Our version now identifies itself by setting the macro: 69 70 MAKE_NAME=sunpro 71 72 This helps to identify that a SunPro Make version supports to include 73 more than a single file with a single include directive. 74 75- SunPro Make: Fixed a bug in the "include" parser that caused dmake 76 with (note the 2 spaces): 77 78 "include \n" 79 80 to try to include a file with a name that equals the first word 81 on the next line, regardless to whether the next line starts with 82 a '#'. Dmake now silently ignores include directives with no filename 83 argument which is aligned with the behavior from "smake" and "gmake". 84 85- SunPro Make: The sequence: 86 87 FOO= 88 include $(FOO) 89 90 no longer complains about trying to include an empty file name 91 but just ignores empty include lists. This makes SunPro Make 92 better aligned as it now behaves like "smake" and "gmake". 93 94- SunPro Make: the include directive is now able to include 95 more than a single file. This makes SunPro Make now compatible to 96 "smake" and "gmake" and thus massively enhances the usability. 97 98- SunPro Make: HOST_MACH and TARGET_MACH now call "uname -m" 99 if not on Solaris 100 101- SunPro Make: The option -R (do not run in parallel) has been 102 enabled. 103 104- SunPro Make: A manpage for "dmake" has been created. 105 106- SunPro Make: The make.1s manpage now mentions the dmake.1 107 manpage 108 109- SunPro Make: The make.1s manpage now better explains the 110 Special-Purpose Macros HOST_ARCH, HOST_MACH, TARGET_ARCH, 111 TARGET_MACH 112 113- SunPro Make: Cygwin does neither have ulimit.h nor ulimit() 114 115 Thanks for Thomas Plank for reporting 116 117- SunPro Make: On Solaris 10, sem_post() is not in libc. 118 On solaris, sem_post() is not in libpthread but in librt, 119 so we need to fix the Makefile. Because of Linux, we need 120 to link against $(LIB_RT) _and_ $(LIB_PTHREAD). 121 122 Thanks to Dennis Clarke for reporting. 123 124- SunPro Make: The source has been converted to use an external 125 #define TEXT_DOMAIN for the textdomain() call. This is to 126 make it compatible to the OpenSolaris-ON makefile system. 127 128- SunPro Make: No longer set NLSPATH with a string that ends 129 in ".cat" as we no longer use catgets(). 130 131- SunPro Make: Allow to interpret the "USE_SVID" and 132 "USE_SVR4_MAKE" environment on Linux the same way as on Solaris. 133 134- SunPro Make: Added a warning to main.cc that mentions that 135 the automatic selection of the POSIX behavior is only possible 136 in case that /usr/bin/make and /usr/xpg4/bin/make must be hardlinked. 137 For this reason, /usr/bin/make and /usr/xpg4/bin/make definitely 138 must be installed hard linked or as two separate copies on 139 OpenSolaris. 140 141- SunPro Make: changed the #ifdefs to select between atexit() 142 and on_exit() to be based on HAVE_ATEXIT. 143 144- SunPro Make: changed #ifdefs to make "exit_status" always 145 available. This makes the code more readable and is not 146 a great problem as most systems support atexit() anyway. 147 148- SunPro Make: avoid a close(i) loop if closefrom() is available. 149 150- SunPro Make: Avoid to address parts of the target strings 151 before the start of the target string when trying to find 152 a pattern match. 153 154- SunPro Make state: 155 156 - It compiles on Solaris, Linux, FreeBSD, NetBSD, HP-UX, 157 Cygwin (if g++ is not broken), Mac OS X. 158 159 - We need feedback for AIX, OpenBSD, DragonFlyBSD, 160 HAIKU, IRIX, SCO 161 162- Bourne Shell: kill -l now no longer lists "bad sig" for nameless 163 signals, but rather the signal number. 164 165- Bourne Shell: conformance testsuite: some missing "\" chars have been 166 added before $(( in order to make sure that arithmetic expressions 167 are evaluated by the shell under test. 168 169 Thanks to Robert Elz for reporting. 170 171 172- strar: Not yet ready, the current status is: 173 174 This command is usable for basic work already The following features 175 are currently missing: 176 177 - A method to descend directory trees, e.g. libfind 178 179 - A noclobber flag 180 181 - A method to avoid to replace files that are more recent on 182 disk than in the archive. 183 184 - Set the file permissions 185 186 - Set the original file time stamps 187 188 - Set the original file owners. 189 190 These features will be implemented in a future version. 191 192 193 194 195- Bourne Shell Missing features for POSIX compliance: 196 197 - Support for $'...' quoting (this is not needed for the current 198 version of POSIX but for the next POSIX 199 version that will be named SUSv8). 200 The development of SUSv8 will start in 201 late 2016. 202 203 We are now expecting the Bourne Shell to be fully POSIX compliant. 204 205 206- Bourne Shell further TODO list: 207 208 - Try to make 209 210 lastline= 211 while read line 212 do 213 lastline=$line 214 done < /etc/passwd 215 echo "lastline=$lastline" 216 217 print the last line of /etc/passwd without the exec "trick" 218 that is documented in the man page. 219 220 - Finish loadable builtin support. 221 222 - POSIX does not allow us to implement ". -h", so we will 223 add a "source" builtin to be able to implement "source -h" 224 225- The following builtins (that are available in bsh) are still missing in 226 the Bourne Shell: 227 228 err echo with output going to stderr 229 glob echo with '\0' instead of ' ' between args 230 env a builtin version of /usr/bin/env 231 232 The following bsh intrinsics are still missing in the Bourne Shell: 233 234 - the restricted bsh has restriction features that 235 are missing in the Bourne shell. 236 237 - source -h read file into history but do not execute 238 239 and probably more features not yet identified to be bsh unique. 240 241 242 243Author: 244 245Joerg Schilling 246D-13353 Berlin 247Germany 248 249Email: joerg@schily.net, js@cs.tu-berlin.de 250 joerg.schilling@fokus.fraunhofer.de 251 252Please mail bugs and suggestions to me. 253