blob: aa8191815c4053a17169e712043235f7ffeddb38
1 | /* |
2 | * libmad - MPEG audio decoder library |
3 | * Copyright (C) 2000-2004 Underbit Technologies, Inc. |
4 | * |
5 | * This program is free software; you can redistribute it and/or modify |
6 | * it under the terms of the GNU General Public License as published by |
7 | * the Free Software Foundation; either version 2 of the License, or |
8 | * (at your option) any later version. |
9 | * |
10 | * This program is distributed in the hope that it will be useful, |
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | * GNU General Public License for more details. |
14 | * |
15 | * You should have received a copy of the GNU General Public License |
16 | * along with this program; if not, write to the Free Software |
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
18 | * |
19 | * $Id: global.h,v 1.11 2004/01/23 09:41:32 rob Exp $ |
20 | */ |
21 | |
22 | # ifndef LIBMAD_GLOBAL_H |
23 | # define LIBMAD_GLOBAL_H |
24 | |
25 | /* conditional debugging */ |
26 | |
27 | # if defined(DEBUG) && defined(NDEBUG) |
28 | # error "cannot define both DEBUG and NDEBUG" |
29 | # endif |
30 | |
31 | # if defined(DEBUG) |
32 | # include <stdio.h> |
33 | # endif |
34 | |
35 | /* conditional features */ |
36 | |
37 | # if defined(OPT_SPEED) && defined(OPT_ACCURACY) |
38 | # error "cannot optimize for both speed and accuracy" |
39 | # endif |
40 | |
41 | # if defined(OPT_SPEED) && !defined(OPT_SSO) |
42 | # define OPT_SSO |
43 | # endif |
44 | |
45 | # if defined(HAVE_UNISTD_H) && defined(HAVE_WAITPID) && \ |
46 | defined(HAVE_FCNTL) && defined(HAVE_PIPE) && defined(HAVE_FORK) |
47 | # define USE_ASYNC |
48 | # endif |
49 | |
50 | # if !defined(HAVE_ASSERT_H) |
51 | # if defined(NDEBUG) |
52 | # define assert(x) /* nothing */ |
53 | # else |
54 | # define assert(x) do { if (!(x)) abort(); } while (0) |
55 | # endif |
56 | # endif |
57 | |
58 | # endif |
59 |