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