From dc0fcecf4dc1a36f66e4c40fc0f8ae8e3dc50313 Mon Sep 17 00:00:00 2001 From: AmadeusGhost <42570690+AmadeusGhost@users.noreply.github.com> Date: Mon, 16 Mar 2020 08:36:40 +0800 Subject: [PATCH] libssh: fix build error --- libs/libssh/Makefile | 28 +++++++----- libs/libssh/patches/001-compile.patch | 35 --------------- libs/libssh/patches/002-disable-libssp.patch | 22 ---------- libs/libssh2/Makefile | 44 +++++++++---------- .../libssh2/patches/01-fix-acinclude-m4.patch | 28 ------------ 5 files changed, 37 insertions(+), 120 deletions(-) delete mode 100644 libs/libssh/patches/001-compile.patch delete mode 100644 libs/libssh/patches/002-disable-libssp.patch delete mode 100644 libs/libssh2/patches/01-fix-acinclude-m4.patch diff --git a/libs/libssh/Makefile b/libs/libssh/Makefile index 17dd3ba4..0af8d343 100644 --- a/libs/libssh/Makefile +++ b/libs/libssh/Makefile @@ -7,21 +7,23 @@ include $(TOPDIR)/rules.mk -PKG_LICENSE:=LGPL-2.1+ BSD-2-Clause +PKG_LICENSE:=LGPL-2.1-or-later BSD-2-Clause PKG_MAINTAINER:=Mislav Novakovic PKG_NAME:=libssh -PKG_VERSION:=0.7.5 -PKG_RELEASE:=1 +PKG_VERSION:=0.9.3 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=https://red.libssh.org/attachments/download/218/ -PKG_HASH:=54e86dd5dc20e5367e58f3caab337ce37675f863f80df85b6b1614966a337095 +PKG_SOURCE_URL:=https://www.libssh.org/files/0.9/ +PKG_HASH:=2c8b5f894dced58b3d629f16f3afa6562c20b4bdc894639163cf657833688f0c + +PKG_CPE_ID:=cpe:/a:libssh:libssh CMAKE_INSTALL:=1 +CMAKE_BINARY_SUBDIR:=build PKG_BUILD_PARALLEL:=1 -PKG_INSTALL:=1 PKG_USE_MIPS16:=0 include $(INCLUDE_DIR)/package.mk @@ -41,8 +43,6 @@ define Package/libssh/description endef CMAKE_OPTIONS = \ - -DCMAKE_INSTALL_PREFIX:PATH=/usr \ - -DCMAKE_BUILD_TYPE:STRING=Release \ -DHAVE_STRTOULL=1 \ -DHAVE_GETADDRINFO=1 \ -DHAVE_TERMIOS_H=1 \ @@ -54,13 +54,17 @@ CMAKE_OPTIONS = \ -DWITH_PCAP:BOOL=OFF \ -DWITH_SERVER:BOOL=ON \ -DWITH_SFTP:BOOL=ON \ - -DWITH_SSH1:BOOL=OFF \ - -DWITH_TESTING:BOOL=OFF \ + -UWITH_STACK_CLASH_PROTECTION \ + -DWITH_STACK_CLASH_PROTECTION=0 \ + -UWITH_STACK_PROTECTOR \ + -DWITH_STACK_PROTECTOR=0 \ + -UWITH_STACK_PROTECTOR_STRONG \ + -DWITH_STACK_PROTECTOR_STRONG=0 ifeq ($(CONFIG_BIG_ENDIAN),y) -CMAKE_OPTIONS += -DWITH_BIG_ENDIAN=ON +CMAKE_OPTIONS += -DHAVE_WORDS_BIGENDIAN=1 else -CMAKE_OPTIONS += -DWITH_BIG_ENDIAN=OFF +CMAKE_OPTIONS += -DHAVE_WORDS_BIGENDIAN=0 endif define Build/InstallDev diff --git a/libs/libssh/patches/001-compile.patch b/libs/libssh/patches/001-compile.patch deleted file mode 100644 index bbc994ba..00000000 --- a/libs/libssh/patches/001-compile.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -35,10 +35,6 @@ include(DefineInstallationPaths) - include(DefineOptions.cmake) - include(CPackConfig.cmake) - --# disallow in-source build --include(MacroEnsureOutOfSourceBuild) --macro_ensure_out_of_source_build("${PROJECT_NAME} requires an out of source build. Please create a separate build directory and run 'cmake /path/to/${PROJECT_NAME} [options]' there.") -- - # search for libraries - if (WITH_ZLIB) - find_package(ZLIB REQUIRED) ---- a/ConfigureChecks.cmake -+++ b/ConfigureChecks.cmake -@@ -5,7 +5,6 @@ include(CheckFunctionExists) - include(CheckLibraryExists) - include(CheckTypeSize) - include(CheckCXXSourceCompiles) --include(TestBigEndian) - - set(PACKAGE ${APPLICATION_NAME}) - set(VERSION ${APPLICATION_VERSION}) -@@ -270,6 +269,8 @@ if (WITH_GSSAPI AND NOT GSSAPI_FOUND) - endif (WITH_GSSAPI AND NOT GSSAPI_FOUND) - - # ENDIAN --if (NOT WIN32) -- test_big_endian(WORDS_BIGENDIAN) --endif (NOT WIN32) -+if (WITH_BIG_ENDIAN) -+ set(WORDS_BIGENDIAN 1) -+else (WITH_BIG_ENDIAN) -+ set(WORDS_BIGENDIAN 0) -+endif (WITH_BIG_ENDIAN) diff --git a/libs/libssh/patches/002-disable-libssp.patch b/libs/libssh/patches/002-disable-libssp.patch deleted file mode 100644 index a4d9221c..00000000 --- a/libs/libssh/patches/002-disable-libssp.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/cmake/Modules/DefineCompilerFlags.cmake -+++ b/cmake/Modules/DefineCompilerFlags.cmake -@@ -1,7 +1,6 @@ - # define system dependent compiler flags - - include(CheckCCompilerFlag) --include(CheckCCompilerFlagSSP) - - if (UNIX AND NOT WIN32) - # -@@ -21,11 +20,6 @@ if (UNIX AND NOT WIN32) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") - endif (WITH_FPIC) - -- check_c_compiler_flag_ssp("-fstack-protector" WITH_STACK_PROTECTOR) -- if (WITH_STACK_PROTECTOR) -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector") -- endif (WITH_STACK_PROTECTOR) -- - if (CMAKE_BUILD_TYPE) - string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER) - if (CMAKE_BUILD_TYPE_LOWER MATCHES (release|relwithdebinfo|minsizerel)) diff --git a/libs/libssh2/Makefile b/libs/libssh2/Makefile index 926c010c..f619f37e 100644 --- a/libs/libssh2/Makefile +++ b/libs/libssh2/Makefile @@ -8,25 +8,27 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libssh2 -PKG_VERSION:=1.8.0 +PKG_VERSION:=1.9.0 PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.libssh2.org/download -PKG_HASH:=39f34e2f6835f4b992cafe8625073a88e5a28ba78f83e8099610a7b3af4676d4 +PKG_HASH:=d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd -PKG_FIXUP:=autoreconf - -PKG_INSTALL:=1 - -PKG_LICENSE:=BSD +PKG_MAINTAINER:=Jiri Slachta +PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=COPYING +PKG_CPE_ID:=cpe:/a:libssh2:libssh2 + +CMAKE_INSTALL:=1 +PKG_BUILD_PARALLEL:=1 PKG_CONFIG_DEPENDS:= \ CONFIG_LIBSSH2_MBEDTLS \ CONFIG_LIBSSH2_OPENSSL include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk define Package/libssh2 SECTION:=libs @@ -34,7 +36,7 @@ define Package/libssh2 TITLE:=SSH2 library URL:=https://www.libssh2.org/ DEPENDS:=+LIBSSH2_MBEDTLS:libmbedtls +LIBSSH2_OPENSSL:libopenssl +zlib - MAINTAINER:=Jiri Slachta + ABI_VERSION:=1 endef define Package/libssh2/description @@ -45,25 +47,21 @@ define Package/libssh2/config source "$(SOURCE)/Config.in" endef -CONFIGURE_ARGS += \ - --disable-examples-build \ - --disable-silent-rules \ - $(if $(CONFIG_LIBSSH2_MBEDTLS),--with-mbedtls --with-libmbedtls-prefix=$(STAGING_DIR)/usr) \ - $(if $(CONFIG_LIBSSH2_OPENSSL),--with-openssl --with-libssl-prefix=$(STAGING_DIR)/usr) \ - --with-libz-prefix=$(STAGING_DIR)/usr +CMAKE_OPTIONS += \ + -DBUILD_SHARED_LIBS=ON \ + -DBUILD_TESTING=OFF \ + -DENABLE_ZLIB_COMPRESSION=ON \ + -DCLEAR_MEMORY=ON -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(INSTALL_DIR) $(1)/usr/lib - $(INSTALL_DIR) $(1)/usr/lib/pkgconfig - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libssh2.so* $(1)/usr/lib/ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libssh2.pc $(1)/usr/lib/pkgconfig/ -endef +ifeq ($(CONFIG_LIBSSH2_OPENSSL),y) + CMAKE_OPTIONS += -DCRYPTO_BACKEND=OpenSSL +else + CMAKE_OPTIONS += -DCRYPTO_BACKEND=mbedTLS +endif define Package/libssh2/install $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libssh2.so* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libssh2.so.$(ABI_VERSION)* $(1)/usr/lib/ endef $(eval $(call BuildPackage,libssh2)) diff --git a/libs/libssh2/patches/01-fix-acinclude-m4.patch b/libs/libssh2/patches/01-fix-acinclude-m4.patch deleted file mode 100644 index d4e11827..00000000 --- a/libs/libssh2/patches/01-fix-acinclude-m4.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -386,9 +386,9 @@ AC_DEFUN([LIBSSH2_CHECKFOR_MBEDTLS], [ - - old_LDFLAGS=$LDFLAGS - old_CFLAGS=$CFLAGS -- if test -n "$use_mbedtls" && test "$use_mbedtls" != "no"; then -- LDFLAGS="$LDFLAGS -L$use_mbedtls/lib" -- CFLAGS="$CFLAGS -I$use_mbedtls/include" -+ if test -n "$with_libmbedtls_prefix" && test "$use_mbedtls" != "no"; then -+ LDFLAGS="$LDFLAGS -L$with_libmbedtls_prefix/lib" -+ CFLAGS="$CFLAGS -I$with_libmbedtls_prefix/include" - fi - - AC_LIB_HAVE_LINKFLAGS([mbedtls], [], [ -@@ -412,9 +412,9 @@ AC_DEFUN([LIBSSH2_CHECKFOR_GCRYPT], [ - - old_LDFLAGS=$LDFLAGS - old_CFLAGS=$CFLAGS -- if test -n "$use_libgcrypt" && test "$use_libgcrypt" != "no"; then -- LDFLAGS="$LDFLAGS -L$use_libgcrypt/lib" -- CFLAGS="$CFLAGS -I$use_libgcrypt/include" -+ if test -n "$with_libgcrypt_prefix" && test "$use_libgcrypt" != "no"; then -+ LDFLAGS="$LDFLAGS -L$with_libgcrypt_prefix/lib" -+ CFLAGS="$CFLAGS -I$with_libgcrypt_prefix/include" - fi - AC_LIB_HAVE_LINKFLAGS([gcrypt], [], [ - #include