diff options
-rw-r--r-- | Makefile | 19 | ||||
-rw-r--r-- | hwaccess.c | 20 | ||||
-rw-r--r-- | meson.build | 18 |
3 files changed, 37 insertions, 20 deletions
@@ -278,6 +278,25 @@ $(call mark_unsupported,CONFIG_DRKAISER CONFIG_NICINTEL CONFIG_NICINTEL_SPI) $(call mark_unsupported,CONFIG_NICINTEL_EEPROM CONFIG_OGP_SPI CONFIG_IT8212) endif +ifeq ($(TARGET_OS), $(filter $(TARGET_OS), Linux Darwin NetBSD OpenBSD)) +FEATURE_CFLAGS += -D'USE_IOPL=1' +else +FEATURE_CFLAGS += -D'USE_IOPL=0' +endif + +ifeq ($(TARGET_OS), $(filter $(TARGET_OS), FreeBSD FreeBSD-glibc DragonFlyBSD)) +FEATURE_CFLAGS += -D'USE_DEV_IO=1' +else +FEATURE_CFLAGS += -D'USE_DEV_IO=0' +endif + +ifeq ($(TARGET_OS), $(filter $(TARGET_OS), Hurd)) +FEATURE_CFLAGS += -D'USE_IOPERM=1' +else +FEATURE_CFLAGS += -D'USE_IOPERM=0' +endif + + ############################################################################### # Flash chip drivers and bus support infrastructure. @@ -30,26 +30,6 @@ #include "programmer.h" #include "hwaccess.h" -#if !(defined(__gnu_linux__) || defined(__linux__) || defined(__APPLE__) && defined(__MACH__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) || defined(__DJGPP__) || defined(__LIBPAYLOAD__) || defined(__sun) || defined(__gnu_hurd__)) -#error "Unknown operating system" -#endif - -#if defined(__gnu_linux__) || defined(__linux__) || defined(__APPLE__) && defined(__MACH__) || defined(__NetBSD__) || defined(__OpenBSD__) -#define USE_IOPL 1 -#else -#define USE_IOPL 0 -#endif -#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) -#define USE_DEV_IO 1 -#else -#define USE_DEV_IO 0 -#endif -#if defined(__gnu_hurd__) -#define USE_IOPERM 1 -#else -#define USE_IOPERM 0 -#endif - #if USE_IOPERM #include <sys/io.h> #endif diff --git a/meson.build b/meson.build index a971a6a6..86657cef 100644 --- a/meson.build +++ b/meson.build @@ -42,6 +42,24 @@ else add_project_arguments('-DIS_WINDOWS=0', language : 'c') endif +if host_machine.system() in ['linux', 'darwin', 'netbsd', 'openbsd'] + add_project_arguments('-DUSE_IOPL=1', language : 'c') +else + add_project_arguments('-DUSE_IOPL=0', language : 'c') +endif + +if host_machine.system() in ['freebsd', 'dragonfly'] + add_project_arguments('-DUSE_DEV_IO=1', language : 'c') +else + add_project_arguments('-DUSE_DEV_IO=0', language : 'c') +endif + +if host_machine.system() in ['gnu'] + add_project_arguments('-DUSE_IOPERM=1', language : 'c') +else + add_project_arguments('-DUSE_IOPERM=0', language : 'c') +endif + # get defaults from configure config_atahpt = get_option('config_atahpt') config_atapromise = get_option('config_atapromise') |