1 2 /* os.h 3 Operating system specific libburn definitions and declarations. 4 The macros defined here are used by libburn modules in order to 5 avoid own system dependent case distinctions. 6 Copyright (C) 2009 - 2016 Thomas Schmitt <scdbackup@gmx.net>, 7 provided under GPLv2+ 8 */ 9 10 #ifndef BURN_OS_H_INCLUDED 11 #define BURN_OS_H_INCLUDED 1 12 13 /* 14 Operating system case distinction 15 */ 16 17 #ifdef Libburn_use_sg_dummY 18 19 20 /* --------- Any other system. With dummy MMC transport sg-dummy.c --------- */ 21 #include "os-dummy.h" 22 23 24 #else 25 #ifdef Libburn_use_libcdiO 26 27 28 /* -------------------------- X/Open with GNU libcdio ---------------------- */ 29 #include "os-libcdio.h" 30 31 32 #else 33 #ifdef __NetBSD__ 34 35 36 /* -------------------------- NetBSD with SCIOCCOMMAND --------------------- */ 37 #include "os-netbsd.h" 38 39 40 #else 41 #ifdef __OpenBSD__ 42 43 44 /* -------------------------- OpenBSD with SCIOCCOMMAND -------------------- */ 45 #include "os-netbsd.h" 46 47 48 #else 49 #ifdef __FreeBSD__ 50 51 52 /* ----------------------------- FreeBSD with CAM -------------------------- */ 53 #include "os-freebsd.h" 54 55 56 #else 57 #ifdef __FreeBSD_kernel__ 58 59 60 /* ----------------------- FreeBSD with CAM under Debian ------------------- */ 61 #include "os-freebsd.h" 62 63 64 #else 65 #ifdef __linux 66 67 68 /* ------- Linux kernels 2.4 and 2.6 with GNU/Linux SCSI Generic (sg) ------ */ 69 #include "os-linux.h" 70 71 72 #else 73 #ifdef __sun 74 75 76 /* ------- Solaris (e.g. SunOS 5.11) with uscsi ------ */ 77 #include "os-solaris.h" 78 79 80 #else 81 82 83 /* --------- Any other system. With dummy MMC transport sg-dummy.c --------- */ 84 #include "os-dummy.h" 85 86 87 #endif /* ! __sun*/ 88 #endif /* ! __linux */ 89 #endif /* ! __FreeBSD__kernel__ */ 90 #endif /* ! __FreeBSD__ */ 91 #endif /* ! __OpenBSD__ */ 92 #endif /* ! __NetBSD__ */ 93 #endif /* ! Libburn_use_libcdiO */ 94 #endif /* ! Libburn_use_sg_dummY */ 95 96 97 #endif /* ! BURN_OS_H_INCLUDED */ 98