1New features with AN-2020-03-27: 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 newer smake 27 *** to compile this source. If your smake is too old and aborts, ensure to 28 *** use the recent smake by calling: 29 30 cd ./psmake 31 ./MAKE-all 32 cd .. 33 psmake/smake 34 psmake/smake install 35 36 The new smake version mentioned above is smake-1.2.4 37 The recent smake version is smake-1.3 38 39 *** Due to the fact that schily-tools 2018-01-26 introduced 40 *** optimizations for the Schily version of SunPro Make, you 41 *** need at least the dmake version from 2018/01/11 with support 42 *** for the "export" directive to compile with this makefile system. 43 44 45 WARNING: the new version of the isoinfo program makes use of the 46 *at() series of functions that have been introduced by Sun 47 in August 2001 and added to POSIX.1-2008. For older platforms, 48 libschily now includes emulations for these functions but 49 these emulations have not yet been tested thoroughly. 50 Please report problems! 51 52 BUG WARNING: Please never report bugs only to Linux distributions as 53 they usually do not forward these bug reports upstream and as 54 the Linux distributions typically do not let skilled people 55 check the bugs. We did not hear about a FIFO problem in star 56 for a long time. Then a problem on Linux occurred once 57 every 6000-10000 tries but it did not happen on Solaris after 58 even 10 million tries, so it was not known besides Linux. 59 60- SunPro Make: The man page now mentions the file .make.state.lock since 61 that file may need manual removal if the system crashes at a bad time. 62 63- SunPro Make: The file Make/include/mksh/defs.h changed a comment to 64 avoid a warning from the IRIX compiler. 65 66- Bourne Shell: The case statement now supports the alternate end case 67 symbol ";;&" that has been introduced by bash. If ";;&" is used instead 68 of ";;", the next pattern list is evaluated and if there is a match, 69 the related command list is executed. 70 71- mkisofs: A new option -noatime has been introduced in order to use the 72 modification time of the files instead of the last access time. 73 74 This allows to create reproducible ISO-90660 filesystem images. 75 76- mkisofs: A new option -creation-date has been introduced in order to 77 use the supplied time stamp instead of the current time in the PVD. 78 79 This allows to create reproducible ISO-90660 filesystem images. 80 81- mkisofs: A new option -effective-date has been introduced in order to 82 use the supplied time stamp instead of the current time in the PVD. 83 84 This allows to create reproducible ISO-90660 filesystem images. 85 86- mkisofs: A new option -expiration-date has been introduced in order to 87 use the supplied time stamp instead of a zeroed time in the PVD. 88 89 This allows to create reproducible ISO-90660 filesystem images. 90 91- mkisofs: The option -modification-date=spec did not work if specified 92 as -modification-date=spec, but it worked if specified as 93 -modification-date spec. This was caused since it starts with 94 looking for the "-m" option, which is another option that takes a 95 string argument. 96 97 We now moved the -m option past the -modification-date option to 98 first look for -modification-date. 99 100- mkisofs: The "current time" used by mkisofs for various places is 101 now derived from the -modification-date argument if present. This 102 gives predictable behavior. 103 104- mkisofs: The time stamp used for the ".rr_moved" directory is now 105 derived from the "current time" value that is derived from the 106 -modification-date argument if present. 107 108- mkisofs: The time stamp used for the "invented" directories is now 109 derived from the "current time" value that is derived from the 110 -modification-date argument if present. 111 112- mkisofs: The time stamp used for the debug information is now 113 derived from the "current time" value that is derived from the 114 -modification-date argument if present. 115 116- mkisofs: If you like to create ISO filesystem images, you should call 117 something like: 118 119 mkisofs -creation-date=202003 -modification-date=202003 \ 120 -effective-date=202003 -noatime some-dir > image.iso 121 122 Do not use the -o option since the -o argument is recorded inside 123 the ISO image. 124 125- mkisofs: A new option -reproducible-date has been added. This 126 option sets -creation-date, -modification-date, -effective-date 127 and -noatime at the same time and helps to make usage easier. 128 129 130- SCCS TODO: 131 132 - Convert sccs.c to use -NSCCS in the back end programs instead 133 of converting g-file names from the command line into s.file 134 names in the frontend in order to forward s.file names to the 135 backend programs. Doing it this way allows us to have the SCCS 136 history files "off tree" in a separate directory tree starting 137 with ".sccs/" at the "project root" directory, as the related 138 code to convert path names is in libcomobj::bulkprepare(). 139 140 - Add code to admin(1) and delta(1) to retrieve the list of 141 new or modified files in order to have all important code 142 for a "sccs commit" in a single program that does not need to 143 deal with ARG_MAX limitations. 144 145 - Add code to admin(1), delta(1) and get(1) to maintain/understand 146 the changeset file. 147 148 - Add code to libcomobj to understand the changeset file, 149 which is needed in order to e.g. know the file names and file 150 specific SIDs/state that correspond to a project global SID. 151 152 - Add code to all programs to maintain a lock (for the file 153 $PROJECTHOME/.sccs/SCCS/s.changeset, that would be in the file 154 $PROJECTHOME/.sccs/SCCS/z.changeset) to maintain a project 155 global lock. 156 157 - Find/verify a complete transactional model that allows to repair 158 complex changes to the set of files for a project that have 159 been aborted in the middle. The current idea is to create the 160 file $PROJECTHOME/.sccs/changeset with the deltas to the 161 changeset during a complex update operation. 162 163 - Find a way to decide when to use SCCS v6 type history files. 164 165 For the project mode, this is needed in order to prevent 166 historic SCCS implementations to believe they could modify 167 files without knowing about project global locks. 168 169 Currently, SCCS V67 needs to be anebale manually for every 170 history file using "admin". 171 172 173 174 175 176- Bourne Shell Missing features for POSIX compliance: 177 178 - Support for $'...' quoting (this is not needed for the current 179 version of POSIX but for the next POSIX 180 version that will be named SUSv8). 181 The development of SUSv8 will start in 182 late 2016. 183 184 We are now expecting the Bourne Shell to be fully POSIX compliant. 185 186- Bourne Shell further TODO list: 187 188 - Finish loadable builtin support. 189 190 - POSIX does not allow us to implement ". -h", so we will 191 add a "source" builtin to be able to implement "source -h" 192 193- The following builtins (that are available in bsh) are still missing in 194 the Bourne Shell: 195 196 err echo with output going to stderr 197 glob echo with '\0' instead of ' ' between args 198 env a builtin version of /usr/bin/env 199 200 The following bsh intrinsics are still missing in the Bourne Shell: 201 202 - the restricted bsh has restriction features that 203 are missing in the Bourne shell. 204 205 - source -h read file into history but do not execute 206 207 and probably more features not yet identified to be bsh unique. 208 209 210 211Author: 212 213Joerg Schilling 214D-13353 Berlin 215Germany 216 217Email: joerg@schily.net, joerg.schilling@fokus.fraunhofer.de 218 219Please mail bugs and suggestions to me. 220