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