link-follow: accomodate mingw and cross-compilation
[gnulib.git] / NEWS
1 Important notes
2 ---------------
3
4 User visible incompatible changes
5 ---------------------------------
6
7 Date        Modules         Changes
8
9 2009-09-04  link-follow     The macro LINK_FOLLOWS_SYMLINK is now tri-state,
10                             rather than only defined to 1.
11
12 2009-09-03  openat          The include files are standardized to POSIX 2008.
13                             For openat, include <fcntl.h>; for
14                             fchmodat, fstatat, and mkdirat, include
15                             <sys/stat.h>; for fchownat and unlinkat,
16                             include <unistd.h>.  For all other
17                             functions provided by this module,
18                             continue to include "openat.h".
19
20 2009-08-30  striconveh      The functions mem_cd_iconveh and str_cd_iconveh
21                             now take an 'iconveh_t *' argument instead of three
22                             iconv_t arguments.
23
24 2009-08-23  tempname        The gen_tempname function takes an additional
25                             'flags' argument. You can safely pass 0.
26
27 2009-08-12  getopt          This module is deprecated. Please choose among
28                             getopt-posix and getopt-gnu. getopt-gnu provides
29                             "long options" and "options with optional
30                             arguments", getopt-posix doesn't.
31
32 2009-06-25  fpurge          The include file is changed from "fpurge.h" to
33                             <stdio.h>.
34
35 2009-04-26  modules/uniconv/u8-conv-from-enc
36             modules/uniconv/u16-conv-from-enc
37             modules/uniconv/u32-conv-from-enc
38                             The calling convention of the functions
39                             u*_conv_from_encoding is changed.
40
41 2009-04-26  modules/uniconv/u8-conv-to-enc
42             modules/uniconv/u16-conv-to-enc
43             modules/uniconv/u32-conv-to-enc
44                             The calling convention of the functions
45                             u*_conv_to_encoding is changed.
46
47 2009-04-24  maintainer-makefile
48                             The maint.mk file was copied from
49                             coreutils, and the old
50                             coverage/gettext/indent rules were
51                             re-added.  If you used 'make syntax-check'
52                             this will add several new checks.  If some
53                             new check is annoying, add the name of the
54                             checks to 'local-checks-to-skip' in your
55                             cfg.mk.
56
57 2009-04-01  visibility      Renamed to lib-symbol-visibility.
58
59 2009-04-01  ld-version-script  Renamed to lib-symbol-versions.
60
61 2009-03-20  close           The substituted variable LIB_CLOSE is removed.
62
63 2009-03-05  filevercmp      Move hidden files up in ordering.
64
65 2009-01-22  c-strtod        This function no longer calls xalloc_die(). If
66             c-strtold       you want to exit the program in case of out-of-
67                             memory, the calling function needs to arrange
68                             for it, like this:
69                                 errno = 0;
70                                 val = c_strtod (...);
71                                 if (val == 0 && errno == ENOMEM)
72                                   xalloc_die ();
73
74 2009-01-17  relocatable-prog  In the Makefile.am or Makefile.in, you now also
75                             need to set RELOCATABLE_STRIP = :.
76
77 2008-12-22  getaddrinfo     When using this module, you now need to link with
78             canon-host      $(GETADDRINFO_LIB).
79
80 2008-12-21  mbiter          The header files "mbiter.h", "mbuiter.h",
81             mbuiter         "mbfile.h" can now be included without checking
82             mbfile          HAVE_MBRTOWC. The macro HAVE_MBRTOWC will no
83                             longer be defined by these modules in a year. If
84                             you want to continue to use it, you need to invoke
85                             AC_FUNC_MBRTOWC yourself.
86
87 2008-11-11  warnings        This module subsumes the file m4/warning.m4 which
88                             was removed.
89
90 2008-10-20  lstat           The include file is changed from "lstat.h" to
91                             <sys/stat.h>.
92
93 2008-10-20  getaddrinfo     The include file is changed from "getaddrinfo.h"
94                             to <netdb.h>.
95
96 2008-10-19  isnanf          The include file is changed from "isnanf.h" to
97                             <math.h>.
98             isnand          The include file is changed from "isnand.h" to
99                             <math.h>.
100             isnanl          The include file is changed from "isnanl.h" to
101                             <math.h>.
102
103 2008-10-18  lchmod          The include file is changed from "lchmod.h" to
104                             <sys/stat.h>.
105
106 2008-10-18  dirfd           The include file is changed from "dirfd.h" to
107                             <dirent.h>.
108
109 2008-10-18  euidaccess      The include file is changed from "euidaccess.h"
110                             to <unistd.h>.
111
112 2008-10-18  getdomainname   The include file is changed from "getdomainname.h"
113                             to <unistd.h>.
114
115 2008-09-28  sockets         When using this module, you now need to link with
116                             $(LIBSOCKET).
117
118 2008-09-24  sys_select      The limitation on `select', introduced 2008-09-23,
119                             was removed.  sys_select now includes a select
120                             wrapper for Winsock.  The wrapper expects socket
121                             and file descriptors to be compatible as arranged
122                             by the sys_socket on MinGW.
123
124 2008-09-23  sys_socket      Under Windows (MinGW), the module now adds
125                             wrappers around Winsock functions, so that
126                             socket descriptors are now compatible with
127                             file descriptors.  In general, this change
128                             will simply improve your code's portability
129                             between POSIX platforms and Windows.  In
130                             particular, you will be able to use ioctl and
131                             close instead of ioctlsocket and closesocket,
132                             and test errno instead of WSAGetLastError ().
133                             On the other hand, you have to audit your code to
134                             remove usage of these Winsock-specific functions.
135
136                             This change does not remove the need to call
137                             the gl_sockets_startup function from the sockets
138                             gnulib module.  Also, for now select is disabled
139                             when you include the sys_socket module; while
140                             the functionality will be restored soon, for
141                             efficiency it is suggested to use the poll system
142                             poll system call and gnulib module instead.
143
144 2008-09-13  EOVERFLOW       The module is removed. Use module errno instead.
145
146 2008-09-01  filename        The module does not define the function
147                             concatenated_filename any more. To get an
148                             equivalent function, use function
149                             xconcatenated_filename from module
150                             'xconcat-filename'.
151
152 2008-08-31  havelib         On Solaris, when searching for 64-bit mode
153                             libraries the directory $prefix/lib is now ignored.
154                             Instead the directory $prefix/lib/64 is searched.
155                             You may need to create a symbolic link for
156                             $prefix/lib/64 if you have 64-bit libraries
157                             installed in $prefix/lib.
158
159 2008-08-19  strverscmp      The include file is changed from "strverscmp.h"
160                             to <string.h>.
161
162 2008-08-14  lock            The include file is changed from "lock.h"
163                             to "glthread/lock.h".
164             tls             The include file is changed from "tls.h"
165                             to "glthread/tls.h".
166
167 2008-07-17  c-stack         The module now requires the addition of
168                             $(LIBCSTACK) or $(LTLIBCSTACK) in Makefile.am,
169                             since it may depend on linking with libsigsegv.
170
171 2008-07-07  isnanf-nolibm   The include file is changed from "isnanf.h"
172                             to "isnanf-nolibm.h".
173             isnand-nolibm   The include file is changed from "isnand.h"
174                             to "isnand-nolibm.h".
175
176 2008-06-10  execute         The execute function takes an additional termsigp
177                             argument. Passing termsigp = NULL is ok.
178             wait-process    The wait_subprocess function takes an additional
179                             termsigp argument. Passing termsigp = NULL is ok.
180
181 2008-05-10  linebreak       The module is split into several modules unilbrk/*.
182                             The include file is changed from "linebreak.h" to
183                             "unilbrk.h". Two functions are renamed:
184                             mbs_possible_linebreaks -> ulc_possible_linebreaks
185                             mbs_width_linebreaks -> ulc_width_linebreaks
186
187 2008-04-28  rpmatch         The include file is now <stdlib.h>.
188
189 2008-04-28  inet_ntop       The include file is changed from "inet_ntop.h"
190                             to <arpa/inet.h>.
191
192 2008-04-28  inet_pton       The include file is changed from "inet_pton.h"
193                             to <arpa/inet.h>.
194
195 2008-03-06  freadahead      The return value's computation has changed. It
196                             now increases by 1 after ungetc.
197
198 2008-01-26  isnan-nolibm    The module name is changed from isnan-nolibm to
199                             isnand-nolibm. The include file is changed from
200                             "isnan.h" to "isnand.h". The function that it
201                             defines is changed from isnan() to isnand().
202
203 2008-01-14  strcasestr      This module now replaces worst-case inefficient
204                             implementations; clients that use controlled
205                             needles and thus do not care about worst-case
206                             efficiency should use the new strcasestr-simple
207                             module instead for smaller code size.
208
209 2008-01-09  alloca-opt      Now defines HAVE_ALLOCA_H only when the system
210                             supplies an <alloca.h>.  Gnulib-using code is now
211                             expected to include <alloca.h> unconditionally.
212                             Non-gnulib-using code can continue to include
213                             <alloca.h> only if HAVE_ALLOCA_H is defined.
214
215 2008-01-08  memmem          This module now replaces worst-case inefficient
216                             implementations; clients that use controlled
217                             needles and thus do not care about worst-case
218                             efficiency should use the new memmem-simple
219                             module instead for smaller code size.
220
221 2007-12-24  setenv          The include file is changed from "setenv.h" to
222                             <stdlib.h>. Also, the unsetenv function is no
223                             longer declared in this module; use the 'unsetenv'
224                             module if you need it.
225
226 2007-12-03  getpagesize     The include file is changed from "getpagesize.h"
227                             to <unistd.h>.
228
229 2007-12-03  strcase         The include file is changed from <string.h> to
230                             <strings.h>.
231
232 2007-10-07  most modules    The license for most modules has changed from
233                             GPLv2+ to GPLv3+, and from LGPLv2+ to LGPLv3+.
234                             A few modules are still under LGPLv2+; see the
235                             module description for the applicable license.
236
237 2007-09-01  linebreak       "linebreak.h" no longer declares the functions
238                             locale_charset, uc_width, u{8,16,32}_width. Use
239                             "uniwidth.h" to get these functions declared.
240
241 2007-08-28  areadlink-with-size
242                             Renamed from mreadlink-with-size.
243                             Function renamed: mreadlink_with_size ->
244                             areadlink_with_size.
245
246 2007-08-22  getdelim, getline
247                             The include file is changed from "getdelim.h"
248                             and "getline.h" to the POSIX 200x <stdio.h>.
249
250 2007-08-18  idcache         Now provides prototypes in "idcache.h".
251
252 2007-08-10  xstrtol         The STRTOL_FATAL_ERROR macro is removed.
253                             Use the new xstrtol_fatal function instead.
254
255 2007-08-04  human           The function human_options no longer reports an
256                             error to standard error; that is now the
257                             caller's responsibility.  It returns an
258                             error code of type enum strtol_error
259                             instead of the integer option value, and stores
260                             the option value via a new int * argument.
261             xstrtol         The first two arguments of STRTOL_FATAL_ERROR
262                             are now an option name and option argument
263                             instead of an option argument and a type string,
264                             STRTOL_FAIL_WARN is removed.
265
266 2007-07-14  gpl, lgpl       New Texinfo versions with no sectioning commands.
267
268 2007-07-10  version-etc     Output now mentions GPLv3+, not GPLv2+.  Use
269                             gnulib-tool --local-dir to override this.
270
271 2007-07-07  wcwidth         The include file is changed from "wcwidth.h" to
272                             <wchar.h>.
273
274 2007-07-02  gpl, lgpl       Renamed to gpl-2.0 and lgpl-2.1 respectively.
275                             (There is also a new module gpl-3.0.)
276
277 2007-06-16  lchown          The include file is changed from "lchown.h" to
278                             <unistd.h>.
279
280 2007-06-09  xallocsa        Renamed to xmalloca. The include file "xallocsa.h"
281                             was remamed to "xmalloca.h". The function was
282                             renamed:
283                               xallocsa -> xmalloca
284
285 2007-06-09  allocsa         Renamed to malloca. The include file "allocsa.h"
286                             was remamed to "malloca.h". The function-like
287                             macros were renamed:
288                               allocsa -> malloca
289                               freesa -> freea
290
291 2007-05-20  utimens         Renamed futimens to gl_futimens, to avoid
292                             conflict with the glibc-2.6-introduced function
293                             that has a different signature.
294
295 2007-05-01  sigprocmask     The module now depends on signal, so replace
296                               #include "sigprocmask.h"
297                             with
298                               #include <signal.h>
299
300 2007-04-06  gettext         The macro HAVE_LONG_DOUBLE is no longer set.
301                             You can replace all its uses with 1, i.e. assume
302                             'long double' as a type exists.
303
304 2007-04-01  arcfour         Renamed to crypto/arcfour.
305             arctwo          Renamed to crypto/arctwo.
306             des             Renamed to crypto/des.
307             gc              Renamed to crypto/gc.
308             gc-arcfour      Renamed to crypto/gc-arcfour.
309             gc-arctwo       Renamed to crypto/gc-arctwo.
310             gc-des          Renamed to crypto/gc-des.
311             gc-hmac-md5     Renamed to crypto/gc-hmac-md5.
312             gc-hmac-sha1    Renamed to crypto/gc-hmac-sha1.
313             gc-md2          Renamed to crypto/gc-md2.
314             gc-md4          Renamed to crypto/gc-md4.
315             gc-md5          Renamed to crypto/gc-md5.
316             gc-pbkdf2-sha1  Renamed to crypto/gc-pbkdf2-sha1.
317             gc-random       Renamed to crypto/gc-random.
318             gc-rijndael     Renamed to crypto/gc-rijndael.
319             gc-sha1         Renamed to crypto/gc-sha1.
320             hmac-md5        Renamed to crypto/hmac-md5.
321             hmac-sha1       Renamed to crypto/hmac-sha1.
322             md2             Renamed to crypto/md2.
323             md4             Renamed to crypto/md4.
324             md5             Renamed to crypto/md5.
325             rijndael        Renamed to crypto/rijndael.
326             sha1            Renamed to crypto/sha1.
327
328 2007-03-27  vasprintf       The module now depends on stdio, so replace
329                                #include "vasprintf.h"
330                             with
331                                #include <stdio.h>
332
333 2007-03-24  tsearch         The include file is changed from "tsearch.h" to
334                             <search.h>.
335
336 2007-03-24  utf8-ucs4       The include file is changed from "utf8-ucs4.h"
337                             to "unistr.h".
338             utf8-ucs4-unsafe  The include file is changed from
339                             "utf8-ucs4-unsafe.h" to "unistr.h".
340             utf16-ucs4      The include file is changed from "utf16-ucs4.h"
341                             to "unistr.h".
342             utf16-ucs4-unsafe  The include file is changed from
343                             "utf16-ucs4-unsafe.h" to "unistr.h".
344             ucs4-utf8       The include file is changed from "ucs4-utf8.h"
345                             to "unistr.h".
346             ucs4-utf16      The include file is changed from "ucs4-utf16.h"
347                             to "unistr.h".
348
349 2007-03-19  iconvme         The module is removed. Use module striconv instead:
350                             iconv_string -> str_iconv
351                             iconv_alloc -> str_cd_iconv (with reversed
352                                            arguments)
353
354 2007-03-15  list            The functions gl_list_create_empty and
355             array-list      gl_list_create now take an extra fourth argument.
356             carray-list     You can pass NULL.
357             linked-list
358             linkedhash-list
359             avltree-list
360             rbtree-list
361             avltreehash-list
362             rbtreehash-list
363
364 2007-03-15  oset            The function gl_oset_create_empty now takes a
365             array-oset      third argument. You can pass NULL.
366             avltree-oset
367             rbtree-oset
368
369 2007-03-12  des             The types and functions in lib/des.h have been
370             gc-des          renamed:
371
372                             des_ctx -> gl_des_ctx, tripledes_ctx -> gl_3des_ctx,
373                             des_is_weak_key -> gl_des_is_weak_key,
374                             des_setkey -> gl_des_setkey,
375                             des_makekey -> gl_des_makekey,
376                             des_ecb_crypt -> gl_des_ecb_crypt,
377                             des_ecb_encrypt -> gl_des_ecb_encrypt,
378                             des_ecb_decrypt -> gl_des_ecb_decrypt,
379                             tripledes_set2keys -> gl_3des_set2keys,
380                             tripledes_set3keys -> gl_3des_set3keys,
381                             tripledes_makekey -> gl_3des_makekey,
382                             tripledes_ecb_crypt -> gl_3des_ecb_crypt.
383
384                             Also consider using the "gc-des" buffer instead of
385                             using the "des" module directly.
386
387 2007-02-28  xreadlink       The module xreadlink was renamed to
388                             xreadlink-with-size. The function was renamed:
389                             xreadlink -> xreadlink_with_size.
390
391 2007-02-18  exit            The modules now depend on stdlib, so replace
392             mkdtemp           #include "exit.h"
393             mkstemp           #include "mkdtemp.h"
394                               #include "mkstemp.h"
395                             with
396                               #include <stdlib.h>
397
398 2007-01-26  strdup          The module now depends on string, so replace
399                               #include "strdup.h"
400                             with
401                               #include <string.h>
402
403 # This is for Emacs.
404 # Local Variables:
405 # indent-tabs-mode: nil
406 # whitespace-check-buffer-indent: nil
407 # End: