os.h 1.45 KB
Newer Older
1 2 3 4 5

/* os.h
   Operating system specific libburn definitions and declarations.
   The macros defined here are used by libburn modules in order to
   avoid own system dependent case distinctions.
6
   Copyright (C) 2009 Thomas Schmitt <scdbackup@gmx.net>, provided under GPLv2+
7 8 9 10 11 12 13 14 15
*/

#ifndef BURN_OS_H_INCLUDED
#define BURN_OS_H_INCLUDED 1

/*
   Operating system case distinction
*/

16

17 18 19 20 21 22 23 24
#ifdef Libburn_use_sg_dummY


/* --------- Any other system. With dummy MMC transport sg-dummy.c --------- */
#include "os-dummy.h"


#else
25 26 27 28 29 30 31 32
#ifdef Libburn_use_libcdiO


/* -------------------------- X/Open with GNU libcdio ---------------------- */
#include "os-libcdio.h"


#else
33 34 35 36 37 38 39
#ifdef __FreeBSD__


/* ----------------------------- FreeBSD with CAM -------------------------- */
#include "os-freebsd.h"


40 41 42 43 44 45 46 47
#else
#ifdef __FreeBSD_kernel__


/* ----------------------- FreeBSD with CAM under Debian ------------------- */
#include "os-freebsd.h"


48 49
#else
#ifdef __linux
50 51


52
/* ------- Linux kernels 2.4 and 2.6 with GNU/Linux SCSI Generic (sg) ------ */
53 54 55
#include "os-linux.h"


56 57 58 59 60 61 62 63
#else
#ifdef __sun


/* ------- Solaris (e.g. SunOS 5.11) with uscsi ------ */
#include "os-solaris.h"


64 65 66 67 68 69 70
#else


/* --------- Any other system. With dummy MMC transport sg-dummy.c --------- */
#include "os-dummy.h"


71
#endif /* ! __sun*/
72
#endif /* ! __linux */
73
#endif /* ! __FreeBSD__kernel__ */
74
#endif /* ! __FreeBSD__ */
75
#endif /* ! Libburn_use_libcdiO */
76
#endif /* ! Libburn_use_sg_dummY */
77 78 79 80


#endif /* ! BURN_OS_H_INCLUDED */