Skip to content

Commit 006a46e

Browse files
authored
Merge pull request #158 from mutouyun/feature/issue-156
Add FreeBSD platform support (fixes #156)
2 parents f8e71a5 + 0d53a3c commit 006a46e

File tree

8 files changed

+10
-8
lines changed

8 files changed

+10
-8
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
[![Build status](https://ci.appveyor.com/api/projects/status/github/mutouyun/cpp-ipc?branch=master&svg=true)](https://ci.appveyor.com/project/mutouyun/cpp-ipc)
66
[![Vcpkg package](https://img.shields.io/badge/Vcpkg-package-blueviolet)](https://github.com/microsoft/vcpkg/tree/master/ports/cpp-ipc)
77

8-
## A high-performance inter-process communication library using shared memory on Linux/Windows.
8+
## A high-performance inter-process communication library using shared memory on Linux/Windows/FreeBSD.
99

1010
* Compilers with C++17 support are recommended (msvc-2017/gcc-7/clang-4)
1111
* No other dependencies except STL.
@@ -44,7 +44,7 @@ Performance data: [performance.xlsx](performance.xlsx)
4444
------
4545

4646

47-
## 使用共享内存的跨平台(Linux/Windows,x86/x64/ARM)高性能IPC通讯库
47+
## 使用共享内存的跨平台(Linux/Windows/FreeBSD,x86/x64/ARM)高性能IPC通讯库
4848

4949
* 推荐支持C++17的编译器(msvc-2017/gcc-7/clang-4)
5050
* 除STL外,无其他依赖

src/libipc/platform/detail.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
# define IPC_OS_WINDOWS_
1010
#elif defined(__linux__) || defined(__linux)
1111
# define IPC_OS_LINUX_
12+
#elif defined(__FreeBSD__)
13+
# define IPC_OS_FREEBSD_
1214
#elif defined(__QNX__)
1315
# define IPC_OS_QNX_
1416
#elif defined(__APPLE__)

src/libipc/platform/platform.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include "libipc/platform/linux/a0/strconv.c"
88
#include "libipc/platform/linux/a0/tid.c"
99
#include "libipc/platform/linux/a0/time.c"
10-
#elif defined(IPC_OS_QNX_)
10+
#elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
1111
#else/*IPC_OS*/
1212
# error "Unsupported platform."
1313
#endif

src/libipc/platform/platform.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#include "libipc/platform/detail.h"
33
#if defined(IPC_OS_WINDOWS_)
44
#include "libipc/platform/win/shm_win.cpp"
5-
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_)
5+
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
66
#include "libipc/platform/posix/shm_posix.cpp"
77
#else/*IPC_OS*/
88
# error "Unsupported platform."

src/libipc/sync/condition.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#include "libipc/platform/win/condition.h"
1010
#elif defined(IPC_OS_LINUX_)
1111
#include "libipc/platform/linux/condition.h"
12-
#elif defined(IPC_OS_QNX_)
12+
#elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
1313
#include "libipc/platform/posix/condition.h"
1414
#else/*IPC_OS*/
1515
# error "Unsupported platform."

src/libipc/sync/mutex.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#include "libipc/platform/win/mutex.h"
1010
#elif defined(IPC_OS_LINUX_)
1111
#include "libipc/platform/linux/mutex.h"
12-
#elif defined(IPC_OS_QNX_)
12+
#elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
1313
#include "libipc/platform/posix/mutex.h"
1414
#else/*IPC_OS*/
1515
# error "Unsupported platform."

src/libipc/sync/semaphore.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include "libipc/platform/detail.h"
88
#if defined(IPC_OS_WINDOWS_)
99
#include "libipc/platform/win/semaphore.h"
10-
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_)
10+
#elif defined(IPC_OS_LINUX_) || defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
1111
#include "libipc/platform/posix/semaphore_impl.h"
1212
#else/*IPC_OS*/
1313
# error "Unsupported platform."

src/libipc/sync/waiter.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
#include "libipc/platform/win/mutex.h"
66
#elif defined(IPC_OS_LINUX_)
77
#include "libipc/platform/linux/mutex.h"
8-
#elif defined(IPC_OS_QNX_)
8+
#elif defined(IPC_OS_QNX_) || defined(IPC_OS_FREEBSD_)
99
#include "libipc/platform/posix/mutex.h"
1010
#else/*IPC_OS*/
1111
# error "Unsupported platform."

0 commit comments

Comments
 (0)