~ubuntu-branches/ubuntu/quantal/libssh/quantal-updates

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