os.c 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*
  2. * Copyright (c) 1999-2002 by The XFree86 Project, Inc.
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining a
  5. * copy of this software and associated documentation files (the "Software"),
  6. * to deal in the Software without restriction, including without limitation
  7. * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  8. * and/or sell copies of the Software, and to permit persons to whom the
  9. * Software is furnished to do so, subject to the following conditions:
  10. *
  11. * The above copyright notice and this permission notice shall be included in
  12. * all copies or substantial portions of the Software.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  17. * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
  18. * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
  19. * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  20. * OTHER DEALINGS IN THE SOFTWARE.
  21. *
  22. * Except as contained in this notice, the name of the copyright holder(s)
  23. * and author(s) shall not be used in advertising or otherwise to promote
  24. * the sale, use or other dealings in this Software without prior written
  25. * authorization from the copyright holder(s) and author(s).
  26. */
  27. #ifdef HAVE_XORG_CONFIG_H
  28. #include <xorg-config.h>
  29. #endif
  30. #include "loaderProcs.h"
  31. /*
  32. * OSNAME is a standard form of the OS name that may be used by the
  33. * loader and by OS-specific modules. OSNAME here is different from what's in
  34. * dix-config.h
  35. */
  36. #undef OSNAME
  37. #if defined(__linux__)
  38. #define OSNAME "linux"
  39. #elif defined(__FreeBSD__)
  40. #define OSNAME "freebsd"
  41. #elif defined(__DragonFly__)
  42. #define OSNAME "dragonfly"
  43. #elif defined(__NetBSD__)
  44. #define OSNAME "netbsd"
  45. #elif defined(__OpenBSD__)
  46. #define OSNAME "openbsd"
  47. #elif defined(__GNU__)
  48. #define OSNAME "hurd"
  49. #elif defined(SVR4) && defined(sun)
  50. #define OSNAME "solaris"
  51. #elif defined(SVR5)
  52. #define OSNAME "svr5"
  53. #elif defined(SVR4)
  54. #define OSNAME "svr4"
  55. #else
  56. #define OSNAME "unknown"
  57. #endif
  58. /* Return the OS name, and run-time OS version */
  59. void
  60. LoaderGetOS(const char **name, int *major, int *minor, int *teeny)
  61. {
  62. if (name)
  63. *name = OSNAME;
  64. /* reporting runtime versions isn't supported yet */
  65. }