libssh: simplified CMAKE tests
[feed/packages.git] / libs / libssh / Makefile
1 #
2 # Copyright (C) 2017 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_LICENSE:=LGPL-2.1-or-later BSD-2-Clause
11 PKG_MAINTAINER:=Mislav Novakovic <mislav.novakovic@sartura.hr>
12
13 PKG_NAME:=libssh
14 PKG_VERSION:=0.9.3
15 PKG_RELEASE:=2
16
17 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
18 PKG_SOURCE_URL:=https://www.libssh.org/files/0.9/
19 PKG_HASH:=2c8b5f894dced58b3d629f16f3afa6562c20b4bdc894639163cf657833688f0c
20
21 PKG_CPE_ID:=cpe:/a:libssh:libssh
22
23 CMAKE_INSTALL:=1
24 CMAKE_BINARY_SUBDIR:=build
25
26 PKG_BUILD_PARALLEL:=1
27 PKG_USE_MIPS16:=0
28
29 include $(INCLUDE_DIR)/package.mk
30 include $(INCLUDE_DIR)/cmake.mk
31
32 define Package/libssh
33 SECTION:=libs
34 CATEGORY:=Libraries
35 URL:=$(PKG_SOURCE_URL)
36 TITLE:=SSH library
37 DEPENDS:=+libpthread +librt +zlib +libopenssl
38 endef
39
40 define Package/libssh/description
41 libssh is a mulitplatform C library implementing the SSHv2 and SSHv1 protocol
42 for client and server implementations.
43 endef
44
45 CMAKE_OPTIONS = \
46 -DHAVE_STRTOULL=1 \
47 -DHAVE_GETADDRINFO=1 \
48 -DHAVE_TERMIOS_H=1 \
49 -DWITH_EXAMPLES:BOOL=OFF \
50 -DWITH_GCRYPT:BOOL=OFF \
51 -DWITH_GSSAPI:BOOL=OFF \
52 -DWITH_LIBZ:BOOL=ON \
53 -DWITH_NACL:BOOL=OFF \
54 -DWITH_PCAP:BOOL=OFF \
55 -DWITH_SERVER:BOOL=ON \
56 -DWITH_SFTP:BOOL=ON \
57 -UWITH_STACK_CLASH_PROTECTION \
58 -DWITH_STACK_CLASH_PROTECTION=0 \
59 -UWITH_STACK_PROTECTOR \
60 -DWITH_STACK_PROTECTOR=0 \
61 -UWITH_STACK_PROTECTOR_STRONG \
62 -DWITH_STACK_PROTECTOR_STRONG=0
63
64 ifeq ($(CONFIG_BIG_ENDIAN),y)
65 CMAKE_OPTIONS += -DHAVE_WORDS_BIGENDIAN=1
66 else
67 CMAKE_OPTIONS += -DHAVE_WORDS_BIGENDIAN=0
68 endif
69
70 define Build/InstallDev
71 $(INSTALL_DIR) $(1)/usr/include/libssh/
72 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/libssh/* $(1)/usr/include/libssh/
73
74 $(INSTALL_DIR) $(1)/usr/lib
75 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libssh* $(1)/usr/lib/
76
77 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
78 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
79 endef
80
81 define Package/libssh/install
82 $(INSTALL_DIR) $(1)/usr/lib
83 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libssh* $(1)/usr/lib/
84 endef
85
86 $(eval $(call BuildPackage,libssh))