jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.9KB

  1. /*
  2. Copyright (C) 2010 Paul Davis
  3. This program is free software; you can redistribute it and/or modify
  4. it under the terms of the GNU Lesser General Public License as published by
  5. the Free Software Foundation; either version 2.1 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU Lesser General Public License for more details.
  11. You should have received a copy of the GNU Lesser General Public License
  12. along with this program; if not, write to the Free Software
  13. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  14. */
  15. #ifndef __weakjack_h__
  16. #define __weakjack_h__
  17. #ifndef JACK_OPTIONAL_WEAK_EXPORT
  18. /* JACK_OPTIONAL_WEAK_EXPORT needs to be a macro which
  19. expands into a compiler directive. If non-null, the directive
  20. must tell the compiler to arrange for weak linkage of
  21. the symbol it used with. For this to work fully may
  22. require linker arguments for the client as well.
  23. */
  24. #ifdef __GNUC__
  25. #define JACK_OPTIONAL_WEAK_EXPORT __attribute__((__weak__))
  26. #else
  27. /* Add other things here for non-gcc platforms */
  28. #endif
  29. #endif
  30. #ifndef JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
  31. /* JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT needs to be a macro
  32. which expands into a compiler directive. If non-null, the directive
  33. must tell the compiler to arrange for weak linkage of the
  34. symbol it is used with AND optionally to mark the symbol
  35. as deprecated. For this to work fully may require
  36. linker arguments for the client as well.
  37. */
  38. #ifdef __GNUC__
  39. #define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT __attribute__((__weak__,__deprecated__))
  40. #else
  41. /* Add other things here for non-gcc platforms */
  42. #endif
  43. #endif
  44. #endif /* weakjack */