@@ -9,14 +9,17 @@ if(APPLE)
9
9
option (ZMQ_BUILD_FRAMEWORK "Build as OS X framework" ON )
10
10
endif ()
11
11
12
- if (WIN32 )
13
- option (WITH_TWEETNACL "Build with tweetnacl" OFF )
14
- else ()
15
- option (WITH_TWEETNACL "Build with tweetnacl" ON )
16
- endif ()
12
+ list (INSERT CMAKE_MODULE_PATH 0 "${CMAKE_SOURCE_DIR} " )
13
+ find_package (Sodium )
17
14
18
- if (WITH_TWEETNACL )
19
- add_definitions (-DHAVE_TWEETNACL -DHAVE_LIBSODIUM )
15
+ set (USE_TWEETNACL OFF )
16
+
17
+ if (SODIUM_FOUND )
18
+ add_definitions (-DHAVE_LIBSODIUM )
19
+ include_directories (${SODIUM_INCLUDE_DIRS} )
20
+ else ()
21
+ set (USE_TWEETNACL ON )
22
+ add_definitions (-DHAVE_TWEETNACL )
20
23
include_directories (
21
24
tweetnacl/contrib/randombytes
22
25
tweetnacl/src
@@ -25,16 +28,12 @@ if(WITH_TWEETNACL)
25
28
set (TWEETNACL_SOURCES
26
29
tweetnacl/src/tweetnacl.c
27
30
)
28
- if ( WIN32 )
29
- else ( )
31
+
32
+ if ( NOT WIN32 )
30
33
list (APPEND TWEETNACL_SOURCES tweetnacl/contrib/randombytes/devurandom.c )
31
34
endif ()
32
- else ()
33
- find_library (SODIUM_FOUND sodium )
34
35
endif ()
35
36
36
-
37
-
38
37
set (POLLER "" CACHE STRING "Choose polling system. valid values are
39
38
kqueue, epoll, devpoll, poll or select [default=autodetect]" )
40
39
@@ -502,9 +501,11 @@ foreach(source ${cxx-sources})
502
501
list (APPEND sources ${CMAKE_CURRENT_SOURCE_DIR} /src/${source} )
503
502
endforeach ()
504
503
505
- foreach (source ${TWEETNACL_SOURCES} )
506
- list (APPEND sources ${CMAKE_CURRENT_SOURCE_DIR} /${source} )
507
- endforeach ()
504
+ if (USE_TWEETNACL )
505
+ foreach (source ${TWEETNACL_SOURCES} )
506
+ list (APPEND sources ${CMAKE_CURRENT_SOURCE_DIR} /${source} )
507
+ endforeach ()
508
+ endif ()
508
509
509
510
foreach (source ${rc-sources} )
510
511
list (APPEND sources ${CMAKE_CURRENT_BINARY_DIR} /${source} )
@@ -602,7 +603,7 @@ else()
602
603
PUBLIC_HEADER "${public_headers} "
603
604
VERSION ${ZMQ_VERSION}
604
605
SOVERSION "${ZMQ_VERSION_MAJOR} .${ZMQ_VERSION_MINOR} .0"
605
- OUTPUT_NAME "libzmq" )
606
+ OUTPUT_NAME "libzmq" )
606
607
if (ZMQ_BUILD_FRAMEWORK )
607
608
set_target_properties (libzmq PROPERTIES
608
609
FRAMEWORK TRUE
@@ -623,7 +624,11 @@ else()
623
624
OUTPUT_NAME "libzmq-static" )
624
625
endif ()
625
626
626
- target_link_libraries (libzmq ${SODIUM_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} )
627
+ target_link_libraries (libzmq ${CMAKE_THREAD_LIBS_INIT} )
628
+
629
+ if (SODIUM_FOUND )
630
+ target_link_libraries (libzmq ${SODIUM_LIBRARIES} )
631
+ endif ()
627
632
if (HAVE_WS2_32 )
628
633
target_link_libraries (libzmq ws2_32 )
629
634
elseif (HAVE_WS2 )
0 commit comments