2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation; either version 2 of the License, or (at
5 * your option) any later version.
7 * This program is distributed in the hope that it will be useful, but
8 * WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10 * General Public License for more details.
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, write to the Free Software
14 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17 * Copyright © 2006 Pierre Habouzit
20 #ifndef MUTT_LIB_LIB_LIB_LIB_H
21 #define MUTT_LIB_LIB_LIB_LIB_H
28 # define __attribute__(a)
31 /* very common and usual headers we just want to have available {{{ */
46 #include <sys/types.h>
59 # include <inttypes.h>
62 #ifdef HAVE_SYS_TIME_H
63 # include <sys/time.h>
70 #ifndef _POSIX_PATH_MAX
71 #include <posix1_lim.h>
75 /* useful and common macros {{{ */
83 #define _(a) (gettext(a))
85 # define N_(a) gettext_noop(a)
99 #define MAX(a,b) ((a) < (b) ? (b) : (a))
100 #define MIN(a,b) ((a) < (b) ? (a) : (b))
104 typedef union __attribute__((transparent_union)) anytype {