mirror of
https://github.com/BertoldVdb/ZoneDetect.git
synced 2026-04-27 14:57:40 +00:00
Fixes to build with MinGW-w64
This commit is contained in:
parent
584bd5246b
commit
46c7fa777d
2 changed files with 14 additions and 8 deletions
|
|
@ -31,7 +31,13 @@ STRIP=$(CCARCH)strip
|
||||||
CFLAGS=-fPIC -O3 -std=gnu99 -pedantic -Wall -Wextra -Wconversion -Werror -c -fmessage-length=0 -ffunction-sections -fdata-sections
|
CFLAGS=-fPIC -O3 -std=gnu99 -pedantic -Wall -Wextra -Wconversion -Werror -c -fmessage-length=0 -ffunction-sections -fdata-sections
|
||||||
LDFLAGS=-shared
|
LDFLAGS=-shared
|
||||||
|
|
||||||
EXECUTABLE=libzonedetect.so
|
ifeq ($(OS),Windows_NT)
|
||||||
|
EXT=dll
|
||||||
|
else
|
||||||
|
EXT=so
|
||||||
|
endif
|
||||||
|
|
||||||
|
EXECUTABLE=libzonedetect.$(EXT)
|
||||||
INCLUDES_SRC=zonedetect.h
|
INCLUDES_SRC=zonedetect.h
|
||||||
SOURCES_SRC=zonedetect.c
|
SOURCES_SRC=zonedetect.c
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#else
|
#else
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
@ -47,7 +47,7 @@ enum ZDInternalError {
|
||||||
ZD_E_DB_OPEN,
|
ZD_E_DB_OPEN,
|
||||||
ZD_E_DB_SEEK,
|
ZD_E_DB_SEEK,
|
||||||
ZD_E_DB_MMAP,
|
ZD_E_DB_MMAP,
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
ZD_E_DB_MMAP_MSVIEW,
|
ZD_E_DB_MMAP_MSVIEW,
|
||||||
ZD_E_DB_MAP_EXCEPTION,
|
ZD_E_DB_MAP_EXCEPTION,
|
||||||
ZD_E_DB_MUNMAP_MSVIEW,
|
ZD_E_DB_MUNMAP_MSVIEW,
|
||||||
|
|
@ -58,7 +58,7 @@ enum ZDInternalError {
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ZoneDetectOpaque {
|
struct ZoneDetectOpaque {
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
HANDLE fd;
|
HANDLE fd;
|
||||||
HANDLE fdMap;
|
HANDLE fdMap;
|
||||||
int32_t length;
|
int32_t length;
|
||||||
|
|
@ -255,7 +255,7 @@ static int ZDParseHeader(ZoneDetect *library)
|
||||||
library->dataOffset += index;
|
library->dataOffset += index;
|
||||||
|
|
||||||
/* Verify file length */
|
/* Verify file length */
|
||||||
if(tmp + library->dataOffset != library->length) {
|
if(tmp + library->dataOffset != (uint32_t)library->length) {
|
||||||
return -2;
|
return -2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -443,7 +443,7 @@ void ZDCloseDatabase(ZoneDetect *library)
|
||||||
free(library->notice);
|
free(library->notice);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
if(!UnmapViewOfFile(library->mapping)) zdError(ZD_E_DB_MUNMAP_MSVIEW, (int)GetLastError());
|
if(!UnmapViewOfFile(library->mapping)) zdError(ZD_E_DB_MUNMAP_MSVIEW, (int)GetLastError());
|
||||||
if(!CloseHandle(library->fdMap)) zdError(ZD_E_DB_MUNMAP , (int)GetLastError());
|
if(!CloseHandle(library->fdMap)) zdError(ZD_E_DB_MUNMAP , (int)GetLastError());
|
||||||
if(!CloseHandle(library->fd)) zdError(ZD_E_DB_CLOSE , (int)GetLastError());
|
if(!CloseHandle(library->fd)) zdError(ZD_E_DB_CLOSE , (int)GetLastError());
|
||||||
|
|
@ -463,7 +463,7 @@ ZoneDetect *ZDOpenDatabase(const char *path)
|
||||||
if(library) {
|
if(library) {
|
||||||
memset(library, 0, sizeof(*library));
|
memset(library, 0, sizeof(*library));
|
||||||
|
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
library->fd = CreateFile(path, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
library->fd = CreateFile(path, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||||
if (library->fd == INVALID_HANDLE_VALUE) {
|
if (library->fd == INVALID_HANDLE_VALUE) {
|
||||||
zdError(ZD_E_DB_OPEN, (int)GetLastError());
|
zdError(ZD_E_DB_OPEN, (int)GetLastError());
|
||||||
|
|
@ -718,7 +718,7 @@ const char *ZDGetErrorString(int errZD)
|
||||||
case ZD_E_DB_OPEN : return ZD_E_COULD_NOT("open database file");
|
case ZD_E_DB_OPEN : return ZD_E_COULD_NOT("open database file");
|
||||||
case ZD_E_DB_SEEK : return ZD_E_COULD_NOT("retrieve database file size");
|
case ZD_E_DB_SEEK : return ZD_E_COULD_NOT("retrieve database file size");
|
||||||
case ZD_E_DB_MMAP : return ZD_E_COULD_NOT("map database file to system memory");
|
case ZD_E_DB_MMAP : return ZD_E_COULD_NOT("map database file to system memory");
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
case ZD_E_DB_MMAP_MSVIEW : return ZD_E_COULD_NOT("open database file view");
|
case ZD_E_DB_MMAP_MSVIEW : return ZD_E_COULD_NOT("open database file view");
|
||||||
case ZD_E_DB_MAP_EXCEPTION: return "I/O exception occurred while accessing database file view";
|
case ZD_E_DB_MAP_EXCEPTION: return "I/O exception occurred while accessing database file view";
|
||||||
case ZD_E_DB_MUNMAP_MSVIEW: return ZD_E_COULD_NOT("close database file view");
|
case ZD_E_DB_MUNMAP_MSVIEW: return ZD_E_COULD_NOT("close database file view");
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue