aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2017-08-20 10:31:09 -0700
committerGarrett D'Amore <garrett@damore.org>2017-08-21 07:18:30 -0700
commit6305e16ab64e42fd9791819d416a6e3534439b0b (patch)
tree8dbb42a07140f0c12a61bf6d6bcf9590f8678ae6 /src/CMakeLists.txt
parentdd2eda5a90ab86bbde1a9da481a423d367586a73 (diff)
downloadnng-6305e16ab64e42fd9791819d416a6e3534439b0b.tar.gz
nng-6305e16ab64e42fd9791819d416a6e3534439b0b.tar.bz2
nng-6305e16ab64e42fd9791819d416a6e3534439b0b.zip
Conditional platform inclusion cleanups.
We only compile files that are appropriate for the platform. (We still have guards in place, to allow for a future single .C file to be built from all the sources.) We also remove the subsystem defines; if a new platform needs to deviate from POSIX in ways beyond what we intended here, then that platform should just copy those parts into a new platform directory, rather than cross including portions from POSIX.
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r--src/CMakeLists.txt70
1 files changed, 39 insertions, 31 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 9ecce72c..1510d633 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -75,37 +75,6 @@ set (NNG_SOURCES
core/transport.c
core/transport.h
- platform/posix/posix_impl.h
- platform/posix/posix_config.h
- platform/posix/posix_aio.h
- platform/posix/posix_pollq.h
-
- platform/posix/posix_alloc.c
- platform/posix/posix_clock.c
- platform/posix/posix_debug.c
- platform/posix/posix_epdesc.c
- platform/posix/posix_ipc.c
- platform/posix/posix_pipe.c
- platform/posix/posix_pipedesc.c
- platform/posix/posix_pollq_poll.c
- platform/posix/posix_rand.c
- platform/posix/posix_resolv_gai.c
- platform/posix/posix_sockaddr.c
- platform/posix/posix_tcp.c
- platform/posix/posix_thread.c
- platform/posix/posix_udp.c
-
- platform/windows/win_impl.h
- platform/windows/win_clock.c
- platform/windows/win_debug.c
- platform/windows/win_iocp.c
- platform/windows/win_ipc.c
- platform/windows/win_net.c
- platform/windows/win_pipe.c
- platform/windows/win_rand.c
- platform/windows/win_resolv.c
- platform/windows/win_thread.c
-
protocol/bus/bus.c
protocol/pair/pair_v0.c
@@ -130,6 +99,45 @@ set (NNG_SOURCES
transport/tcp/tcp.c
)
+if (NNG_PLATFORM_POSIX)
+ set (NNG_SOURCES ${NNG_SOURCES}
+ platform/posix/posix_impl.h
+ platform/posix/posix_config.h
+ platform/posix/posix_aio.h
+ platform/posix/posix_pollq.h
+
+ platform/posix/posix_alloc.c
+ platform/posix/posix_clock.c
+ platform/posix/posix_debug.c
+ platform/posix/posix_epdesc.c
+ platform/posix/posix_ipc.c
+ platform/posix/posix_pipe.c
+ platform/posix/posix_pipedesc.c
+ platform/posix/posix_pollq_poll.c
+ platform/posix/posix_rand.c
+ platform/posix/posix_resolv_gai.c
+ platform/posix/posix_sockaddr.c
+ platform/posix/posix_tcp.c
+ platform/posix/posix_thread.c
+ platform/posix/posix_udp.c
+ )
+endif()
+
+if (NNG_PLATFORM_WINDOWS)
+ set (NNG_SOURCES ${NNG_SOURCES}
+ platform/windows/win_impl.h
+ platform/windows/win_clock.c
+ platform/windows/win_debug.c
+ platform/windows/win_iocp.c
+ platform/windows/win_ipc.c
+ platform/windows/win_net.c
+ platform/windows/win_pipe.c
+ platform/windows/win_rand.c
+ platform/windows/win_resolv.c
+ platform/windows/win_thread.c
+ )
+endif()
+
include_directories(AFTER SYSTEM ${PROJECT_SOURCE_DIR}/src)
# Provide same folder structure in IDE as on disk