You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
304 lines
7.4 KiB
304 lines
7.4 KiB
#
|
|
# Copyright (c) 2012-2013 Martin Sustrik All rights reserved.
|
|
# Copyright (c) 2013 GoPivotal, Inc. All rights reserved.
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
# of this software and associated documentation files (the "Software"),
|
|
# to deal in the Software without restriction, including without limitation
|
|
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
# and/or sell copies of the Software, and to permit persons to whom
|
|
# the Software is furnished to do so, subject to the following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included
|
|
# in all copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
# IN THE SOFTWARE.
|
|
#
|
|
|
|
set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
set (NN_SOURCES
|
|
nn.h
|
|
inproc.h
|
|
ipc.h
|
|
tcp.h
|
|
ws.h
|
|
pair.h
|
|
pubsub.h
|
|
reqrep.h
|
|
pipeline.h
|
|
survey.h
|
|
bus.h
|
|
|
|
core/ep.h
|
|
core/ep.c
|
|
core/epbase.c
|
|
core/global.h
|
|
core/global.c
|
|
core/pipe.c
|
|
core/poll.c
|
|
core/sock.h
|
|
core/sock.c
|
|
core/sockbase.c
|
|
core/symbol.c
|
|
|
|
aio/ctx.h
|
|
aio/ctx.c
|
|
aio/fsm.h
|
|
aio/fsm.c
|
|
aio/poller.h
|
|
aio/poller.c
|
|
aio/poller_epoll.h
|
|
aio/poller_epoll.inc
|
|
aio/poller_kqueue.h
|
|
aio/poller_kqueue.inc
|
|
aio/poller_poll.h
|
|
aio/poller_poll.inc
|
|
aio/pool.h
|
|
aio/pool.c
|
|
aio/timer.h
|
|
aio/timer.c
|
|
aio/timerset.h
|
|
aio/timerset.c
|
|
aio/usock.h
|
|
aio/usock.c
|
|
aio/usock_posix.h
|
|
aio/usock_posix.inc
|
|
aio/usock_win.h
|
|
aio/usock_win.inc
|
|
aio/worker.h
|
|
aio/worker.c
|
|
aio/worker_posix.h
|
|
aio/worker_posix.inc
|
|
aio/worker_win.h
|
|
aio/worker_win.inc
|
|
|
|
utils/alloc.h
|
|
utils/alloc.c
|
|
utils/atomic.h
|
|
utils/atomic.c
|
|
utils/attr.h
|
|
utils/chunk.h
|
|
utils/chunk.c
|
|
utils/chunkref.h
|
|
utils/chunkref.c
|
|
utils/clock.h
|
|
utils/clock.c
|
|
utils/closefd.h
|
|
utils/closefd.c
|
|
utils/cont.h
|
|
utils/efd.h
|
|
utils/efd.c
|
|
utils/efd_eventfd.h
|
|
utils/efd_eventfd.inc
|
|
utils/efd_pipe.h
|
|
utils/efd_pipe.inc
|
|
utils/efd_socketpair.h
|
|
utils/efd_socketpair.inc
|
|
utils/efd_win.h
|
|
utils/efd_win.inc
|
|
utils/err.h
|
|
utils/err.c
|
|
utils/fast.h
|
|
utils/fd.h
|
|
utils/glock.h
|
|
utils/glock.c
|
|
utils/hash.h
|
|
utils/hash.c
|
|
utils/int.h
|
|
utils/list.h
|
|
utils/list.c
|
|
utils/msg.h
|
|
utils/msg.c
|
|
utils/mutex.h
|
|
utils/mutex.c
|
|
utils/queue.h
|
|
utils/queue.c
|
|
utils/random.h
|
|
utils/random.c
|
|
utils/sem.h
|
|
utils/sem.c
|
|
utils/sleep.h
|
|
utils/sleep.c
|
|
utils/thread.h
|
|
utils/thread.c
|
|
utils/thread_posix.h
|
|
utils/thread_posix.inc
|
|
utils/thread_win.h
|
|
utils/thread_win.inc
|
|
utils/wire.h
|
|
utils/wire.c
|
|
|
|
devices/device.h
|
|
devices/device.c
|
|
devices/tcpmuxd.c
|
|
|
|
protocols/utils/dist.h
|
|
protocols/utils/dist.c
|
|
protocols/utils/excl.h
|
|
protocols/utils/excl.c
|
|
protocols/utils/fq.h
|
|
protocols/utils/fq.c
|
|
protocols/utils/lb.h
|
|
protocols/utils/lb.c
|
|
protocols/utils/priolist.h
|
|
protocols/utils/priolist.c
|
|
|
|
protocols/bus/bus.h
|
|
protocols/bus/bus.c
|
|
protocols/bus/xbus.h
|
|
protocols/bus/xbus.c
|
|
|
|
protocols/pipeline/push.h
|
|
protocols/pipeline/push.c
|
|
protocols/pipeline/pull.h
|
|
protocols/pipeline/pull.c
|
|
protocols/pipeline/xpull.h
|
|
protocols/pipeline/xpull.c
|
|
protocols/pipeline/xpush.h
|
|
protocols/pipeline/xpush.c
|
|
|
|
protocols/pair/pair.h
|
|
protocols/pair/pair.c
|
|
protocols/pair/xpair.h
|
|
protocols/pair/xpair.c
|
|
|
|
protocols/pubsub/pub.h
|
|
protocols/pubsub/pub.c
|
|
protocols/pubsub/sub.h
|
|
protocols/pubsub/sub.c
|
|
protocols/pubsub/trie.h
|
|
protocols/pubsub/trie.c
|
|
protocols/pubsub/xpub.h
|
|
protocols/pubsub/xpub.c
|
|
protocols/pubsub/xsub.h
|
|
protocols/pubsub/xsub.c
|
|
|
|
protocols/reqrep/req.h
|
|
protocols/reqrep/req.c
|
|
protocols/reqrep/rep.h
|
|
protocols/reqrep/rep.c
|
|
protocols/reqrep/task.h
|
|
protocols/reqrep/task.c
|
|
protocols/reqrep/xrep.h
|
|
protocols/reqrep/xrep.c
|
|
protocols/reqrep/xreq.h
|
|
protocols/reqrep/xreq.c
|
|
|
|
protocols/survey/respondent.h
|
|
protocols/survey/respondent.c
|
|
protocols/survey/surveyor.h
|
|
protocols/survey/surveyor.c
|
|
protocols/survey/xrespondent.h
|
|
protocols/survey/xrespondent.c
|
|
protocols/survey/xsurveyor.h
|
|
protocols/survey/xsurveyor.c
|
|
|
|
transports/utils/backoff.h
|
|
transports/utils/backoff.c
|
|
transports/utils/dns.h
|
|
transports/utils/dns.c
|
|
transports/utils/dns_getaddrinfo.h
|
|
transports/utils/dns_getaddrinfo.inc
|
|
transports/utils/dns_getaddrinfo_a.h
|
|
transports/utils/dns_getaddrinfo_a.inc
|
|
transports/utils/iface.h
|
|
transports/utils/iface.c
|
|
transports/utils/literal.h
|
|
transports/utils/literal.c
|
|
transports/utils/port.h
|
|
transports/utils/port.c
|
|
transports/utils/streamhdr.h
|
|
transports/utils/streamhdr.c
|
|
transports/utils/base64.h
|
|
transports/utils/base64.c
|
|
|
|
transports/inproc/binproc.h
|
|
transports/inproc/binproc.c
|
|
transports/inproc/cinproc.h
|
|
transports/inproc/cinproc.c
|
|
transports/inproc/inproc.h
|
|
transports/inproc/inproc.c
|
|
transports/inproc/ins.h
|
|
transports/inproc/ins.c
|
|
transports/inproc/msgqueue.h
|
|
transports/inproc/msgqueue.c
|
|
transports/inproc/sinproc.h
|
|
transports/inproc/sinproc.c
|
|
|
|
transports/ipc/aipc.h
|
|
transports/ipc/aipc.c
|
|
transports/ipc/bipc.h
|
|
transports/ipc/bipc.c
|
|
transports/ipc/cipc.h
|
|
transports/ipc/cipc.c
|
|
transports/ipc/ipc.h
|
|
transports/ipc/ipc.c
|
|
transports/ipc/sipc.h
|
|
transports/ipc/sipc.c
|
|
|
|
transports/tcp/atcp.h
|
|
transports/tcp/atcp.c
|
|
transports/tcp/btcp.h
|
|
transports/tcp/btcp.c
|
|
transports/tcp/ctcp.h
|
|
transports/tcp/ctcp.c
|
|
transports/tcp/stcp.h
|
|
transports/tcp/stcp.c
|
|
transports/tcp/tcp.h
|
|
transports/tcp/tcp.c
|
|
|
|
transports/tcpmux/atcpmux.h
|
|
transports/tcpmux/atcpmux.c
|
|
transports/tcpmux/btcpmux.h
|
|
transports/tcpmux/btcpmux.c
|
|
transports/tcpmux/ctcpmux.h
|
|
transports/tcpmux/ctcpmux.c
|
|
transports/tcpmux/stcpmux.h
|
|
transports/tcpmux/stcpmux.c
|
|
transports/tcpmux/tcpmux.h
|
|
transports/tcpmux/tcpmux.c
|
|
|
|
transports/ws/aws.h
|
|
transports/ws/aws.c
|
|
transports/ws/bws.h
|
|
transports/ws/bws.c
|
|
transports/ws/cws.h
|
|
transports/ws/cws.c
|
|
transports/ws/sws.h
|
|
transports/ws/sws.c
|
|
transports/ws/ws.h
|
|
transports/ws/ws.c
|
|
transports/ws/ws_handshake.h
|
|
transports/ws/ws_handshake.c
|
|
transports/ws/sha1.h
|
|
transports/ws/sha1.c
|
|
)
|
|
|
|
if (WIN32)
|
|
LIST (APPEND NN_SOURCES
|
|
utils/win.h
|
|
)
|
|
endif ()
|
|
|
|
add_library (nanomsg SHARED ${NN_SOURCES})
|
|
|
|
add_definitions (-DNN_EXPORTS)
|
|
add_definitions (-DNN_USE_LITERAL_IFADDR)
|
|
|
|
target_link_libraries (nanomsg ws2_32)
|
|
target_link_libraries (nanomsg Mswsock.lib)
|
|
target_link_libraries (nanomsg Advapi32.lib)
|
|
|
|
install(TARGETS nanomsg
|
|
ARCHIVE DESTINATION lib
|
|
LIBRARY DESTINATION lib
|
|
RUNTIME DESTINATION bin)
|
|
|