diff options
author | Tony Theodore <tonyt@logyst.com> | 2017-10-29 00:47:59 (GMT) |
---|---|---|
committer | Tony Theodore <tonyt@logyst.com> | 2017-10-29 01:27:01 (GMT) |
commit | 817b81d7c5f0e9032a7b88a9457d054164a32214 (patch) | |
tree | f5db2342742b04db921c7b4527068af867b4a65e /src/libssh.mk | |
parent | f4440b7aeba2b8194b5b3b7ba178dd77b4d4a2c4 (diff) | |
download | mxe-817b81d7c5f0e9032a7b88a9457d054164a32214.zip mxe-817b81d7c5f0e9032a7b88a9457d054164a32214.tar.gz mxe-817b81d7c5f0e9032a7b88a9457d054164a32214.tar.bz2 |
add package libssh
Another SSH library with different focus (and distinct headers/libs).
See:
https://www.libssh2.org/libssh2-vs-libssh.html
Diffstat (limited to 'src/libssh.mk')
-rw-r--r-- | src/libssh.mk | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/libssh.mk b/src/libssh.mk new file mode 100644 index 0000000..e6d95f3 --- /dev/null +++ b/src/libssh.mk @@ -0,0 +1,61 @@ +# This file is part of MXE. See LICENSE.md for licensing information. + +PKG := libssh +$(PKG)_WEBSITE := https://www.libssh.org +$(PKG)_DESCR := SSHv2 and SSHv1 protocol on client and server side +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.7.5 +$(PKG)_CHECKSUM := d275b1b3622c36efacfac748d5eecaf0e80349a551f72abb6ce5afa8c2e6b784 +$(PKG)_SUBDIR := libssh-$($(PKG)_VERSION) +$(PKG)_FILE := libssh-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := https://git.libssh.org/projects/libssh.git/snapshot/libssh-$($(PKG)_VERSION).tar.gz +$(PKG)_DEPS := gcc openssl zlib + +define $(PKG)_UPDATE + $(WGET) -q -O- 'https://git.libssh.org/projects/libssh.git/refs/tags' | \ + $(SED) -n "s,.*>libssh-\([0-9]*\.[^<]*\)\.tar.*,\1,p" | \ + $(SORT) -Vr | \ + head -1 +endef + +define $(PKG)_BUILD + # build and install the library + cd '$(BUILD_DIR)' && $(TARGET)-cmake '$(SOURCE_DIR)' \ + -DWITH_STATIC_LIB=$(CMAKE_STATIC_BOOL) \ + -DWITH_SHARED_LIB=$(CMAKE_SHARED_BOOL) \ + -DWITH_BENCHMARKS=OFF \ + -DWITH_CLIENT_TESTING=OFF \ + -DWITH_DEBUG_CALLTRACE=OFF \ + -DWITH_DEBUG_CRYPTO=OFF \ + -DWITH_EXAMPLES=OFF \ + -DWITH_GCRYPT=OFF \ + -DWITH_GSSAPI=OFF \ + -DWITH_INTERNAL_DOC=OFF \ + -DWITH_NACL=OFF \ + -DWITH_PCAP=OFF \ + -DWITH_SERVER=ON \ + -DWITH_SFTP=ON \ + -DWITH_SSH1=ON \ + -DWITH_TESTING=OFF \ + -DWITH_ZLIB=ON + + $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' + $(MAKE) -C '$(BUILD_DIR)' -j 1 install + + # create pkg-config file + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig' + (echo 'Name: $(PKG)'; \ + echo 'Version: $($(PKG)_VERSION)'; \ + echo 'Description: libssh'; \ + echo 'Requires: openssl'; \ + echo 'Libs: -lssh'; \ + echo 'Cflags.private: -DLIBSSH_STATIC';) \ + > '$(PREFIX)/$(TARGET)/lib/pkgconfig/$(PKG).pc' + + # compile test + '$(TARGET)-gcc' \ + -W -Wall -Werror -pedantic \ + $(SOURCE_DIR)/examples/{authentication.c,knownhosts.c,connect_ssh.c,exec.c} \ + -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \ + `'$(TARGET)-pkg-config' $(PKG) --cflags --libs` +endef |