1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
1 |
project(libssh-library C) |
2 |
||
3 |
set(LIBSSH_PUBLIC_INCLUDE_DIRS |
|
4 |
${CMAKE_SOURCE_DIR}/include |
|
5 |
${CMAKE_CURRENT_SOURCE_DIR} |
|
6 |
${CMAKE_SOURCE_DIR} |
|
7 |
CACHE INTERNAL "libssh public include directories" |
|
8 |
) |
|
9 |
||
10 |
set(LIBSSH_PRIVATE_INCLUDE_DIRS |
|
11 |
${CMAKE_BINARY_DIR} |
|
12 |
${ZLIB_INCLUDE_DIRS} |
|
13 |
) |
|
14 |
||
15 |
set(LIBSSH_SHARED_LIBRARY |
|
16 |
ssh_shared |
|
17 |
CACHE INTERNAL "libssh shared library" |
|
18 |
) |
|
19 |
||
20 |
if (WITH_STATIC_LIB) |
|
21 |
set(LIBSSH_STATIC_LIBRARY |
|
22 |
ssh_static |
|
23 |
CACHE INTERNAL "libssh static library" |
|
24 |
) |
|
25 |
endif (WITH_STATIC_LIB) |
|
26 |
||
27 |
set(LIBSSH_LINK_LIBRARIES |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
28 |
${LIBSSH_REQUIRED_LIBRARIES} |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
29 |
${ZLIB_LIBRARIES} |
30 |
) |
|
31 |
||
32 |
if (WIN32) |
|
33 |
set(LIBSSH_LINK_LIBRARIES |
|
34 |
${LIBSSH_LINK_LIBRARIES} |
|
35 |
ws2_32 |
|
36 |
) |
|
37 |
endif (WIN32) |
|
38 |
||
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
39 |
if (HAVE_LIBSOCKET) |
40 |
set(LIBSSH_LINK_LIBRARIES |
|
41 |
${LIBSSH_LINK_LIBRARIES} |
|
42 |
socket |
|
43 |
) |
|
44 |
endif (HAVE_LIBSOCKET) |
|
45 |
||
1.1.6
by Laurent Bigonville
Import upstream version 0.4.3 |
46 |
if (OPENSSL_LIBRARIES) |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
47 |
set(LIBSSH_PRIVATE_INCLUDE_DIRS |
48 |
${LIBSSH_PRIVATE_INCLUDE_DIRS} |
|
49 |
${OPENSSL_INCLUDE_DIRS} |
|
50 |
) |
|
51 |
||
52 |
set(LIBSSH_LINK_LIBRARIES |
|
53 |
${LIBSSH_LINK_LIBRARIES} |
|
1.1.6
by Laurent Bigonville
Import upstream version 0.4.3 |
54 |
${OPENSSL_LIBRARIES} |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
55 |
) |
1.1.6
by Laurent Bigonville
Import upstream version 0.4.3 |
56 |
endif (OPENSSL_LIBRARIES) |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
57 |
|
58 |
if (GCRYPT_LIBRARY) |
|
59 |
set(LIBSSH_PRIVATE_INCLUDE_DIRS |
|
60 |
${LIBSSH_PRIVATE_INCLUDE_DIRS} |
|
61 |
${GCRYPT_INCLUDE_DIRS} |
|
62 |
) |
|
63 |
||
64 |
set(LIBSSH_LINK_LIBRARIES |
|
65 |
${LIBSSH_LINK_LIBRARIES} |
|
66 |
${GCRYPT_LIBRARY} |
|
67 |
) |
|
68 |
endif (GCRYPT_LIBRARY) |
|
69 |
||
70 |
set(libssh_SRCS |
|
71 |
agent.c |
|
72 |
auth.c |
|
73 |
base64.c |
|
74 |
buffer.c |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
75 |
callbacks.c |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
76 |
channels.c |
77 |
client.c |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
78 |
config.c |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
79 |
connect.c |
80 |
crc32.c |
|
81 |
crypt.c |
|
82 |
dh.c |
|
83 |
error.c |
|
84 |
gcrypt_missing.c |
|
85 |
gzip.c |
|
86 |
init.c |
|
87 |
kex.c |
|
88 |
keyfiles.c |
|
89 |
keys.c |
|
90 |
log.c |
|
91 |
match.c |
|
92 |
messages.c |
|
93 |
misc.c |
|
94 |
options.c |
|
95 |
packet.c |
|
96 |
poll.c |
|
97 |
session.c |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
98 |
scp.c |
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
99 |
socket.c |
100 |
string.c |
|
101 |
wrapper.c |
|
102 |
) |
|
103 |
||
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
104 |
if (WITH_PCAP) |
105 |
set(libssh_SRCS |
|
106 |
${libssh_SRCS} |
|
107 |
pcap.c |
|
108 |
) |
|
109 |
||
110 |
endif (WITH_PCAP) |
|
111 |
||
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
112 |
if (WITH_SFTP) |
113 |
set(libssh_SRCS |
|
114 |
${libssh_SRCS} |
|
115 |
sftp.c |
|
116 |
) |
|
117 |
||
118 |
if (WITH_SERVER) |
|
119 |
set(libssh_SRCS |
|
120 |
${libssh_SRCS} |
|
121 |
sftpserver.c |
|
122 |
) |
|
123 |
endif (WITH_SERVER) |
|
124 |
endif (WITH_SFTP) |
|
125 |
||
126 |
if (WITH_SSH1) |
|
127 |
set(libssh_SRCS |
|
128 |
${libssh_SRCS} |
|
129 |
auth1.c |
|
130 |
channels1.c |
|
131 |
) |
|
132 |
endif (WITH_SSH1) |
|
133 |
||
134 |
if (WITH_SERVER) |
|
135 |
set(libssh_SRCS |
|
136 |
${libssh_SRCS} |
|
137 |
server.c |
|
138 |
) |
|
139 |
endif (WITH_SERVER) |
|
140 |
||
141 |
include_directories( |
|
142 |
${LIBSSH_PUBLIC_INCLUDE_DIRS} |
|
143 |
${LIBSSH_PRIVATE_INCLUDE_DIRS} |
|
144 |
) |
|
145 |
||
146 |
add_library(${LIBSSH_SHARED_LIBRARY} SHARED ${libssh_SRCS}) |
|
147 |
||
148 |
target_link_libraries(${LIBSSH_SHARED_LIBRARY} ${LIBSSH_LINK_LIBRARIES}) |
|
149 |
||
150 |
set_target_properties( |
|
151 |
${LIBSSH_SHARED_LIBRARY} |
|
152 |
PROPERTIES |
|
153 |
VERSION |
|
154 |
${LIBRARY_VERSION} |
|
155 |
SOVERSION |
|
156 |
${LIBRARY_SOVERSION} |
|
157 |
OUTPUT_NAME |
|
158 |
ssh |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
159 |
DEFINE_SYMBOL |
160 |
LIBSSH_EXPORTS |
|
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
161 |
) |
162 |
||
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
163 |
if (WITH_VISIBILITY_HIDDEN) |
164 |
set_target_properties(${LIBSSH_SHARED_LIBRARY} PROPERTIES COMPILE_FLAGS "-fvisibility=hidden") |
|
165 |
endif (WITH_VISIBILITY_HIDDEN) |
|
166 |
||
167 |
||
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
168 |
install( |
169 |
TARGETS |
|
170 |
${LIBSSH_SHARED_LIBRARY} |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
171 |
RUNTIME DESTINATION ${BIN_INSTALL_DIR} |
172 |
LIBRARY DESTINATION ${LIB_INSTALL_DIR} |
|
173 |
ARCHIVE DESTINATION ${LIB_INSTALL_DIR} |
|
174 |
COMPONENT libraries |
|
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
175 |
) |
176 |
||
177 |
if (WITH_STATIC_LIB) |
|
178 |
add_library(${LIBSSH_STATIC_LIBRARY} STATIC ${libssh_SRCS}) |
|
179 |
||
180 |
set_target_properties( |
|
181 |
${LIBSSH_STATIC_LIBRARY} |
|
182 |
PROPERTIES |
|
183 |
VERSION |
|
184 |
${LIBRARY_VERSION} |
|
185 |
SOVERSION |
|
186 |
${LIBRARY_SOVERSION} |
|
1.1.3
by Jonathan Thomas
Import upstream version 0.3.92 |
187 |
COMPILE_FLAGS |
188 |
"-DLIBSSH_STATIC" |
|
1.1.2
by Jonathan Riddell
Import upstream version 0.3.4 |
189 |
) |
190 |
||
191 |
install( |
|
192 |
TARGETS |
|
193 |
${LIBSSH_STATIC_LIBRARY} |
|
194 |
DESTINATION |
|
195 |
${LIB_INSTALL_DIR} |
|
196 |
COMPONENT |
|
197 |
libraries |
|
198 |
) |
|
199 |
endif (WITH_STATIC_LIB) |
|
200 |