lt__glibc.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /* lt__glibc.h -- support for non glibc environments
  2. Copyright (C) 2004, 2006-2007, 2011-2015 Free Software Foundation,
  3. Inc.
  4. Written by Gary V. Vaughan, 2004
  5. NOTE: The canonical source of this file is maintained with the
  6. GNU Libtool package. Report bugs to bug-libtool@gnu.org.
  7. GNU Libltdl is free software; you can redistribute it and/or
  8. modify it under the terms of the GNU Lesser General Public
  9. License as published by the Free Software Foundation; either
  10. version 2 of the License, or (at your option) any later version.
  11. As a special exception to the GNU Lesser General Public License,
  12. if you distribute this file as part of a program or library that
  13. is built using GNU Libtool, you may include this file under the
  14. same distribution terms that you use for the rest of that program.
  15. GNU Libltdl is distributed in the hope that it will be useful,
  16. but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. GNU Lesser General Public License for more details.
  19. You should have received a copy of the GNU Lesser General Public
  20. License along with GNU Libltdl; see the file COPYING.LIB. If not, a
  21. copy can be downloaded from http://www.gnu.org/licenses/lgpl.html,
  22. or obtained by writing to the Free Software Foundation, Inc.,
  23. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  24. */
  25. #if !defined LT__GLIBC_H
  26. #define LT__GLIBC_H 1
  27. #if defined LT_CONFIG_H
  28. # include LT_CONFIG_H
  29. #else
  30. # include <config.h>
  31. #endif
  32. #if !defined HAVE_ARGZ_H || !defined HAVE_WORKING_ARGZ
  33. /* Redefine any glibc symbols we reimplement to import the
  34. implementations into our lt__ namespace so we don't ever
  35. clash with the system library if our clients use argz_*
  36. from there in addition to libltdl. */
  37. # undef argz_append
  38. # define argz_append lt__argz_append
  39. # undef argz_create_sep
  40. # define argz_create_sep lt__argz_create_sep
  41. # undef argz_insert
  42. # define argz_insert lt__argz_insert
  43. # undef argz_next
  44. # define argz_next lt__argz_next
  45. # undef argz_stringify
  46. # define argz_stringify lt__argz_stringify
  47. # include <lt__argz.h>
  48. #else
  49. #ifdef __cplusplus
  50. extern "C" {
  51. #endif
  52. #include <argz.h>
  53. #ifdef __cplusplus
  54. }
  55. #endif
  56. #endif /*!defined HAVE_ARGZ_H || !defined HAVE_WORKING_ARGZ*/
  57. # define slist_concat lt__slist_concat
  58. # define slist_cons lt__slist_cons
  59. # define slist_delete lt__slist_delete
  60. # define slist_remove lt__slist_remove
  61. # define slist_reverse lt__slist_reverse
  62. # define slist_sort lt__slist_sort
  63. # define slist_tail lt__slist_tail
  64. # define slist_nth lt__slist_nth
  65. # define slist_find lt__slist_find
  66. # define slist_length lt__slist_length
  67. # define slist_foreach lt__slist_foreach
  68. # define slist_box lt__slist_box
  69. # define slist_unbox lt__slist_unbox
  70. #include <slist.h>
  71. #endif /*!defined LT__GLIBC_H*/