mirror of
https://github.com/opnsense/src.git
synced 2026-03-29 06:03:14 -04:00
We need dependent packages to be able to include spl_config.h to
build properly. This was partially solved in commit 0cbaeb1 by using
AH_BOTTOM to #undef common #defines (PACKAGE, VERSION, etc) which
autoconf always adds and cannot be easily removed. This solution
works as long as the spl_config.h is included before your projects
config.h. That turns out to be easier said than done. In particular,
this is a problem when your package includes its config.h using the
-include gcc option which ensures the first thing included is your
config.h.
To handle all cases cleanly I have removed the AH_BOTTOM hack and
replaced it with an AC_CONFIG_HEADERS command. This command runs
immediately after spl_config.h is written and with a little awk-foo
it strips the offending #defines from the file. This eliminates
the problem entirely and makes header safe for inclusion.
Also in this change I have removed the few places in the code where
spl_config.h is included. It is now added to the gcc compile line
to ensure the config results are always available.
Finally, I have also disabled the verbose kernel builds. If you
want them back you can always build with 'make V=1'. Since things
are working now they don't need to be on by default.
61 lines
1.5 KiB
C
61 lines
1.5 KiB
C
#ifndef _SPL_TYPES_H
|
|
#define _SPL_TYPES_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <linux/types.h>
|
|
#include <sys/sysmacros.h>
|
|
|
|
#include <linux/uaccess_compat.h>
|
|
#include <linux/file_compat.h>
|
|
#include <linux/list_compat.h>
|
|
#include <linux/time_compat.h>
|
|
#include <linux/bitops_compat.h>
|
|
#include <linux/smp_compat.h>
|
|
#include <linux/workqueue_compat.h>
|
|
#include <linux/kallsyms_compat.h>
|
|
#include <linux/mutex_compat.h>
|
|
#include <linux/module_compat.h>
|
|
#include <linux/sysctl_compat.h>
|
|
|
|
#ifndef HAVE_UINTPTR_T
|
|
typedef unsigned long uintptr_t;
|
|
#endif
|
|
|
|
#ifndef ULLONG_MAX
|
|
#define ULLONG_MAX (~0ULL)
|
|
#endif
|
|
|
|
#ifndef LLONG_MAX
|
|
#define LLONG_MAX ((long long)(~0ULL>>1))
|
|
#endif
|
|
|
|
typedef enum { B_FALSE=0, B_TRUE=1 } boolean_t;
|
|
typedef unsigned long intptr_t;
|
|
typedef unsigned long ulong_t;
|
|
typedef unsigned int uint_t;
|
|
typedef unsigned char uchar_t;
|
|
typedef unsigned long long u_longlong_t;
|
|
typedef unsigned long long u_offset_t;
|
|
typedef unsigned long long rlim64_t;
|
|
typedef long long longlong_t;
|
|
typedef long long offset_t;
|
|
typedef struct task_struct kthread_t;
|
|
typedef struct vmem { } vmem_t;
|
|
typedef short pri_t;
|
|
typedef struct timespec timestruc_t; /* definition per SVr4 */
|
|
typedef struct timespec timespec_t;
|
|
typedef longlong_t hrtime_t;
|
|
typedef unsigned short ushort_t;
|
|
typedef u_longlong_t len_t;
|
|
typedef longlong_t diskaddr_t;
|
|
typedef ushort_t o_mode_t;
|
|
typedef uint_t major_t;
|
|
typedef uint_t minor_t;
|
|
typedef ulong_t pfn_t;
|
|
typedef ulong_t pgcnt_t;
|
|
typedef long spgcnt_t;
|
|
|
|
#endif /* _SPL_TYPES_H */
|