Skip to content

Commit

Permalink
Switch to zsync2 (#1036)
Browse files Browse the repository at this point in the history
* We were missing parallel builds in a few places...

* Build cURL on non-Android eInk devices

Needed for zsync2

* And now for zsync2 itself...

* Exterminate legacy zsync with extreme prejudice
  • Loading branch information
NiLuJe committed Feb 4, 2020
1 parent 45347f7 commit c258c33
Show file tree
Hide file tree
Showing 22 changed files with 434 additions and 411 deletions.
5 changes: 3 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -25,26 +25,27 @@ all: $(OUTPUT_DIR)/libs $(if $(ANDROID),,$(LUAJIT)) \
$(if $(ANDROID),$(LPEG_DYNLIB) $(LPEG_RE),) \
$(if $(WIN32),,$(ZMQ_LIB) $(CZMQ_LIB) $(FILEMQ_LIB) $(ZYRE_LIB)) \
$(if $(WIN32),,$(OUTPUT_DIR)/sdcv) \
$(if $(WIN32),,$(OUTPUT_DIR)/zsync) \
$(if $(or $(DARWIN),$(WIN32),$(ANDROID),$(UBUNTUTOUCH),$(APPIMAGE)),,$(OUTPUT_DIR)/dropbear) \
$(if $(or $(KINDLE),$(KOBO),$(CERVANTES)),$(OUTPUT_DIR)/sftp-server,) \
$(if $(or $(DARWIN),$(WIN32)),,$(OUTPUT_DIR)/tar) \
$(if $(or $(CERVANTES),$(KINDLE),$(KOBO),$(REMARKABLE)),$(OUTPUT_DIR)/fbink,) \
$(if $(REMARKABLE),$(OUTPUT_DIR)/button-listen,) \
$(SQLITE_LIB) \
$(if $(or $(CERVANTES),$(KINDLE),$(KOBO),$(POCKETBOOK),$(REMARKABLE),$(SONY_PRSTUX)),$(CURL_LIB),) \
$(if $(or $(CERVANTES),$(KINDLE),$(KOBO),$(POCKETBOOK),$(REMARKABLE),$(SONY_PRSTUX)),$(OUTPUT_DIR)/zsync2,) \
$(LUA_LJ_SQLITE) $(OUTPUT_DIR)/common/xsys.lua
ifndef EMULATE_READER
ifndef KODEBUG
STRIP_FILES="\
$(if $(WIN32),,$(OUTPUT_DIR)/sdcv) \
$(if $(WIN32),,$(OUTPUT_DIR)/tar) \
$(if $(WIN32),,$(OUTPUT_DIR)/zsync) \
$(if $(or $(DARWIN),$(WIN32),$(ANDROID),$(UBUNTUTOUCH),$(APPIMAGE)),,$(OUTPUT_DIR)/dropbear) \
$(if $(or $(KINDLE),$(KOBO),$(CERVANTES)),$(OUTPUT_DIR)/sftp-server,) \
$(if $(or $(KINDLE),$(KOBO)),$(OUTPUT_DIR)/scp,) \
$(if $(or $(CERVANTES),$(KINDLE),$(KOBO),$(REMARKABLE)),$(OUTPUT_DIR)/fbink,) \
$(if $(REMARKABLE),$(OUTPUT_DIR)/button-listen,) \
$(if $(or $(KOBO),$(REMARKABLE)),$(OUTPUT_DIR)/fbdepth,) \
$(if $(or $(CERVANTES),$(KINDLE),$(KOBO),$(POCKETBOOK),$(REMARKABLE),$(SONY_PRSTUX)),$(OUTPUT_DIR)/zsync2,) \
$(if $(ANDROID),,$(LUAJIT)) \
$(OUTPUT_DIR)/libs/$(if $(WIN32),*.dll,*.so*)" ;\
$(STRIP) --strip-unneeded $${STRIP_FILES} ;\
Expand Down
13 changes: 10 additions & 3 deletions Makefile.defs
Original file line number Diff line number Diff line change
Expand Up @@ -792,8 +792,6 @@ CZMQ_LIB=$(OUTPUT_DIR)/libs/libczmq$(CZMQ_FMQ_ZYRE_LIB_EXT)
FILEMQ_LIB=$(OUTPUT_DIR)/libs/libfmq$(CZMQ_FMQ_ZYRE_LIB_EXT)
ZYRE_LIB=$(OUTPUT_DIR)/libs/libzyre$(CZMQ_FMQ_ZYRE_LIB_EXT)

ZSYNC_BUILD_DIR=$(THIRDPARTY_DIR)/zsync/build/$(MACHINE)
ZSYNC_DIR=$(CURDIR)/$(ZSYNC_BUILD_DIR)/zsync-prefix/src/zsync-build
TAR_BUILD_DIR=$(THIRDPARTY_DIR)/tar/build/$(MACHINE)
TAR_DIR=$(CURDIR)/$(TAR_BUILD_DIR)/tar-prefix/src/tar-build
DROPBEAR_BUILD_DIR=$(THIRDPARTY_DIR)/dropbear/build/$(MACHINE)
Expand All @@ -803,6 +801,14 @@ OPENSSH_DIR=$(CURDIR)/$(OPENSSH_BUILD_DIR)/openssh-prefix/src/openssh-build
FBINK_BUILD_DIR=$(THIRDPARTY_DIR)/fbink/build/$(MACHINE)
FBINK_DIR=$(CURDIR)/$(FBINK_BUILD_DIR)/fbink-prefix/src/fbink-build

CURL_BUILD_DIR=$(THIRDPARTY_DIR)/curl/build/$(MACHINE)
CURL_DIR=$(CURDIR)/$(CURL_BUILD_DIR)/curl-prefix/src/curl-build
CURL_LIB_EXT=$(if $(WIN32),.dll,$(if $(DARWIN),.dylib,.so.4))
CURL_LIB=$(OUTPUT_DIR)/libs/libcurl$(CURL_LIB_EXT)

ZSYNC2_BUILD_DIR=$(THIRDPARTY_DIR)/zsync2/build/$(MACHINE)
ZSYNC2_DIR=$(CURDIR)/$(ZSYNC2_BUILD_DIR)/zsync2-prefix/src/zsync2-build

TURBO_BUILD_DIR=$(THIRDPARTY_DIR)/turbo/build/$(MACHINE)
TURBO_DIR=$(CURDIR)/$(TURBO_BUILD_DIR)/turbo-prefix/src/turbo
TURBO_FFI_WRAP_LIB=$(OUTPUT_DIR)/common/libtffi_wrap$(LIB_EXT)
Expand Down Expand Up @@ -883,11 +889,12 @@ LPEG_DYNLIB=$(OUTPUT_DIR)/rocks/lib/lua/5.1/lpeg.so

CMAKE_THIRDPARTY_LIBS := kpvcrlib,nanosvg
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),evernote-sdk-lua,luajit,lpeg,turbo
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),zsync,zyre,czmq,filemq,libzmq
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),zyre,czmq,filemq,libzmq
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),libk2pdfopt,tesseract,leptonica
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),lj-wpaclient
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),lua-Spore,luasec,luasocket,libffi,lua-serialize,glib,lodepng,minizip
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),djvulibre,mupdf,freetype2,harfbuzz,giflib,libpng,zlib
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),tar,sdcv,libiconv,gettext,libjpeg-turbo,popen-noshell,sqlite
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),openssl,dropbear,openssh
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),curl,zsync2
CMAKE_THIRDPARTY_LIBS := $(CMAKE_THIRDPARTY_LIBS),fbink
46 changes: 28 additions & 18 deletions Makefile.third
Original file line number Diff line number Diff line change
Expand Up @@ -459,24 +459,6 @@ ifdef ANDROID
|| echo "warning: Android L+ support only PIE binary and can't run this"
endif

# ===========================================================================
# zsync: rsync over HTTP

$(OUTPUT_DIR)/zsync: $(THIRDPARTY_DIR)/zsync/*.*
install -d $(ZSYNC_BUILD_DIR)
cd $(ZSYNC_BUILD_DIR) && \
$(CMAKE) $(CMAKE_FLAGS) -DHOST="$(if $(EMULATE_READER),,$(CHOST))" -DCC="$(CC)" \
-DCFLAGS="$(CFLAGS)" \
-DLDFLAGS="$(LDFLAGS)" \
-DLIBS="$(if $(ANDROID),-static,)" \
$(CURDIR)/$(THIRDPARTY_DIR)/zsync && \
$(CMAKE_MAKE_PROGRAM) $(CMAKE_MAKE_PROGRAM_FLAGS)
cp $(ZSYNC_DIR)/zsync $(OUTPUT_DIR)/
ifdef ANDROID
readelf -d $@ | grep "no dynamic" \
|| echo "warning: Android L+ support only PIE binary and can't run this"
endif

# ===========================================================================
# FBInk: visual feedback on Kobo/Kindle/Cervantes

Expand Down Expand Up @@ -750,6 +732,34 @@ $(NANOSVG_HEADERS): $(THIRDPARTY_DIR)/nanosvg/*.*
cp -fL $(NANOSVG_DIR)/nanosvg/src/nanosvgrast.h $(NANOSVG_INCLUDE_DIR)/
cp -fL $(NANOSVG_DIR)/nanosvg/example/stb_image_write.h $(NANOSVG_INCLUDE_DIR)/

# cURL
$(CURL_LIB): $(THIRDPARTY_DIR)/curl/*.*
install -d $(CURL_BUILD_DIR)
cd $(CURL_BUILD_DIR) && \
$(CMAKE) $(CMAKE_FLAGS) -DCHOST="$(CHOST)" \
-DCC="$(CC)" \
-DCPPFLAGS="$(CPPFLAGS) -I$(ZLIB_DIR)/include -I$(OPENSSL_DIR)/include" \
-DCFLAGS="$(CFLAGS)" \
-DLDFLAGS="$(LDFLAGS) -L$(ZLIB_DIR) -L$(OPENSSL_DIR) -Wl,-rpath,'$(ORIGIN_CMAKE_TO_AUTOCFG)/../libs' -lssl -lcrypto -lz -lrt" \
$(CURDIR)/thirdparty/curl && \
$(CMAKE_MAKE_PROGRAM) $(CMAKE_MAKE_PROGRAM_FLAGS)
cp -fL $(CURL_DIR)/lib/$(notdir $(CURL_LIB)) $(OUTPUT_DIR)/libs
cp $(CURL_DIR)/ca-bundle.crt $(OUTPUT_DIR)/data/ca-bundle.crt

# zsync2
$(OUTPUT_DIR)/zsync2: $(THIRDPARTY_DIR)/zsync2/*.*
install -d $(ZSYNC2_BUILD_DIR)
cd $(ZSYNC2_BUILD_DIR) && \
$(CMAKE) $(CMAKE_FLAGS) \
-DCPPFLAGS="$(CPPFLAGS) -I$(ZLIB_DIR)/include -I$(OPENSSL_DIR)/include" \
-DCFLAGS="$(CFLAGS)" \
-DCXXFLAGS="$(CXXFLAGS)" \
-DLDFLAGS="$(LDFLAGS) -L$(CURL_DIR)/lib -L$(OPENSSL_DIR) -Wl,-rpath,'\\\$$ORIGIN/./libs' -lssl -lcrypto" \
-DCURL_DIR="$(CURL_DIR)" \
$(CURDIR)/$(THIRDPARTY_DIR)/zsync2 && \
$(CMAKE_MAKE_PROGRAM) $(CMAKE_MAKE_PROGRAM_FLAGS)
cp $(ZSYNC2_DIR)/src/zsync2 $(OUTPUT_DIR)/

comma:=,
empty:=
space:=$(empty) $(empty)
Expand Down
2 changes: 1 addition & 1 deletion ffi/framebuffer.lua
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,7 @@ end
-- All odd orientations are Landscape (1 and 3), the larger one being the Inverted variant
-- NOTE: We only swap to Inverted variants when that was requested interactively by the user,
-- to avoid doing unrequested inversions during the few manual setScreenMode calls we might do,
-- (f.g., user selected default orientation)
-- (e.g., user selected default orientation)
function fb:setScreenMode(mode, interactive)
if mode == "portrait" then
if bit.band(self.cur_rotation_mode, 1) == 1 then
Expand Down
10 changes: 9 additions & 1 deletion thirdparty/cmake_modules/CMakeCross.cmake
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# CMake Cross ToolChain config file. Adapted from Debian's dpkg-cross ;).
# c.f., https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling-toolchain
# NOTE: Remember that CMake is a special snowflake that completely *ignores* CPPFLAGS,
# because of course it does...
# (https://gitlab.kitware.com/cmake/cmake/issues/12928)

# set minimum cmake version required for cross-compiling to work
cmake_minimum_required (VERSION 3.5.1)
set (NO_POLICY_SCOPE NEW)
set(NO_POLICY_SCOPE NEW)
# Build with rm CMakeCache.txt; cmake -DCMAKE_TOOLCHAIN_FILE=./CMakeCross.txt .

# set target system name
Expand Down Expand Up @@ -35,6 +38,11 @@ set(CMAKE_C_COMPILER $ENV{CROSS_TC}-gcc)
set(CMAKE_CXX_COMPILER $ENV{CROSS_TC}-g++)

# set various other toolchain tools
# NOTE: These apparently need to be cache values for arcane CMake reasons.
# Should also apparently be fully resolved absolute paths,
# but that lead to weird expansion and hilarious warnings last time I tried...
# If all else fails, comment out, and hope just export AR & co will do the job.
# That, or directly including this in a toplevel CmakeFile.txt...
set(CMAKE_STRIP "$ENV{CROSS_TC}-strip" CACHE FILEPATH "Strip")
set(CMAKE_AR "$ENV{CROSS_TC}-ar" CACHE FILEPATH "Archive")
set(CMAKE_RANLIB "$ENV{CROSS_TC}-ranlib" CACHE FILEPATH "RanLib")
Expand Down
49 changes: 49 additions & 0 deletions thirdparty/curl/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
project(curl)
cmake_minimum_required(VERSION 3.5.1)

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_LIST_DIR}/../cmake_modules")
include("koreader_thirdparty_common")
include("koreader_thirdparty_git")

enable_language(C)

assert_var_defined(CC)
assert_var_defined(CPPFLAGS)
assert_var_defined(CFLAGS)
assert_var_defined(LDFLAGS)
assert_var_defined(CHOST)

ep_get_source_dir(SOURCE_DIR)
ep_get_binary_dir(BINARY_DIR)

set(PATCH_CMD1 sh -c "${ISED} '/LD_LIBRARY_PATH=/d' ${SOURCE_DIR}/configure.ac")
set(PATCH_CMD2 sh -c "${ISED} '/CURL_MAC_CFLAGS/d' ${SOURCE_DIR}/configure.ac")
set(PATCH_CMD3 sh -c "./buildconf")

set(CFG_ENV_VAR "CC=\"${CC}\" CPPFLAGS=\"${CPPFLAGS}\" CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\"")
# Take a deep breath...
set(CFG_OPTS "--prefix=\"${BINARY_DIR}\" --host=\"${CHOST}\" --enable-shared=yes --enable-static=no --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-winssl --with-ca-fallback --with-ca-bundle=./data/ca-bundle.crt --with-ssl --with-ca-path=/etc/ssl/certs --disable-alt-svc --enable-crypto-auth --enable-dict --disable-esni --enable-file --enable-ftp --enable-gopher --enable-http --enable-imap --disable-ldap --disable-ldaps --disable-ntlm-wb --enable-pop3 --enable-rt --enable-rtsp --disable-smb --without-libssh2 --enable-smtp --enable-telnet -enable-tftp --enable-tls-srp --disable-ares --enable-cookies --enable-dateparse --enable-dnsshuffle --enable-doh --enable-hidden-symbols --enable-http-auth --disable-ipv6 --enable-largefile --without-libpsl --enable-manual --enable-mime --enable-netrc --enable-progress-meter --enable-proxy --disable-sspi --enable-threaded-resolver --enable-pthreads --disable-versioned-symbols --without-amissl --without-bearssl --without-cyassl --without-darwinssl --without-fish-functions-dir --without-libidn2 --without-gssapi --without-libmetalink --without-nghttp2 --without-librtmp --without-brotli --without-schannel --without-secure-transport --without-spnego --without-winidn --without-wolfssl --with-zlib")
set(CFG_CMD "${CFG_ENV_VAR} ${SOURCE_DIR}/configure ${CFG_OPTS}")
set(CFG_CMD sh -c "${CFG_CMD}")
set(BUILD_CMD1 sh -c "${KO_MAKE_RECURSIVE} ca-bundle")
set(BUILD_CMD2 sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS}")
set(INSTALL_CMD1 sh -c "${KO_MAKE_RECURSIVE} install")
set(INSTALL_CMD2 ${CMAKE_COMMAND} -E rename ${SOURCE_DIR}/lib/ca-bundle.crt ${BINARY_DIR}/ca-bundle.crt)

ko_write_gitclone_script(
GIT_CLONE_SCRIPT_FILENAME
https://github.com/curl/curl.git
tags/curl-7_68_0
${SOURCE_DIR}
)

include(ExternalProject)
ExternalProject_Add(
${PROJECT_NAME}
DOWNLOAD_COMMAND ${CMAKE_COMMAND} -P ${GIT_CLONE_SCRIPT_FILENAME}
BUILD_IN_SOURCE 1
PATCH_COMMAND COMMAND ${PATCH_CMD1} COMMAND ${PATCH_CMD2} COMMAND ${PATCH_CMD3}
CONFIGURE_COMMAND ${CFG_CMD}
BUILD_COMMAND COMMAND ${BUILD_CMD1} COMMAND ${BUILD_CMD2}
INSTALL_COMMAND COMMAND ${INSTALL_CMD1} COMMAND ${INSTALL_CMD2}
)
2 changes: 1 addition & 1 deletion thirdparty/evernote-sdk-lua/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ assert_var_defined(CC)
assert_var_defined(OUTPUT_DIR)
assert_var_defined(LDFLAGS)

set(BUILD_CMD sh -c "${KO_MAKE_RECURSIVE} -C thrift CC=\"${CC}\" LDFLAGS=\"${LDFLAGS}\" DYNLIB_CFLAGS=\"${DYNLIB_CFLAGS}\" OUTPUT_DIR=${OUTPUT_DIR}")
set(BUILD_CMD sh -c "${KO_MAKE_RECURSIVE} -j1 -C thrift CC=\"${CC}\" LDFLAGS=\"${LDFLAGS}\" DYNLIB_CFLAGS=\"${DYNLIB_CFLAGS}\" OUTPUT_DIR=${OUTPUT_DIR}")

ko_write_gitclone_script(
GIT_CLONE_SCRIPT_FILENAME
Expand Down
8 changes: 4 additions & 4 deletions thirdparty/fbink/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,18 @@ elseif($ENV{CERVANTES})
set(FBINK_TARGET "cervantes")
elseif($ENV{KOBO})
set(FBINK_TARGET "strip")
set(UTILS_TARGET "utils")
set(UTILS_TARGET "utils KOBO=1")
elseif($ENV{REMARKABLE})
set(FBINK_TARGET "remarkable")
set(UTILS_TARGET "REMARKABLE=1 utils")
set(UTILS_TARGET "utils REMARKABLE=1")
else()
set(FBINK_TARGET "strip")
endif()

# Minimal, statically linked build, we don't care about extra fonts or image support
set(BUILD_CMD1 sh -c "${KO_MAKE_RECURSIVE} MINIMAL=1 OPENTYPE=1 CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" ${FBINK_TARGET}")
set(BUILD_CMD1 sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} MINIMAL=1 OPENTYPE=1 CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" ${FBINK_TARGET}")
if(UTILS_TARGET)
set(BUILD_CMD2 sh -c "${KO_MAKE_RECURSIVE} CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" ${UTILS_TARGET}")
set(BUILD_CMD2 sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" ${UTILS_TARGET}")
endif()
# We build in-tree...
set(INSTALL_CMD1 ${CMAKE_COMMAND} -E make_directory ${BINARY_DIR})
Expand Down
2 changes: 1 addition & 1 deletion thirdparty/luasec/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ ep_get_source_dir(SOURCE_DIR)
# Don't enforce CFLAGS
set(PATCH_CMD sh -c "${ISED} 's|-O2 ||g' src/Makefile")

set(BUILD_CMD_STR sh -c "${KO_MAKE_RECURSIVE} CC=\"${CC}\" LD=\"${LD}\" AR=\"${AR}\" RANLIB=\"${RANLIB}\" INC_PATH=\"${INC_PATH}\" LIB_PATH=\"${LIB_PATH}\" LUAPATH=\"${LUAPATH}\" LUACPATH=\"${LUAPATH}\"")
set(BUILD_CMD_STR sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} CC=\"${CC}\" LD=\"${LD}\" AR=\"${AR}\" RANLIB=\"${RANLIB}\" INC_PATH=\"${INC_PATH}\" LIB_PATH=\"${LIB_PATH}\" LUAPATH=\"${LUAPATH}\" LUACPATH=\"${LUAPATH}\"")
if(DEFINED LIBS)
set(BUILD_CMD_STR "${BUILD_CMD_STR} LIBS=\"${LIBS}\"")
endif()
Expand Down
2 changes: 1 addition & 1 deletion thirdparty/luasocket/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ set(PATCH_CMD "${PATCH_CMD} && ${ISED} 's|MIME_CDIR)/core|MIME_CDIR)/mcore|' src
# Don't enforce CFLAGS
set(PATCH_CMD "${PATCH_CMD} && ${ISED} 's|-O2 -ggdb3 ||g' src/makefile")

set(BUILD_CMD_STR sh -c "${KO_MAKE_RECURSIVE} PLAT=${PLAT} CC=\"${CC}\" LD=\"${CC}\"")
set(BUILD_CMD_STR sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} PLAT=${PLAT} CC=\"${CC}\" LD=\"${CC}\"")
if(DEFINED MYLDFLAGS)
set(BUILD_CMD_STR "${BUILD_CMD_STR} MYLDFLAGS=\"${MYLDFLAGS}\"")
endif()
Expand Down
6 changes: 2 additions & 4 deletions thirdparty/openssh/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@ assert_var_defined(CHOST)
ep_get_source_dir(SOURCE_DIR)
ep_get_binary_dir(BINARY_DIR)

# NOTE: OpenSSH >= 7.9p1 is starting to deprecated OpenSSL < 1.1.x... -_-".
set(PATCH_CMD1 "${KO_PATCH} ${CMAKE_CURRENT_SOURCE_DIR}/openssh-7.9_p1-openssl-1.0.2-compat.patch")
set(PATCH_CMD2 sh -c "autoreconf -fi")
set(PATCH_CMD sh -c "autoreconf -fi")

set(CFG_ENV_VAR "CC=\"${CC}\" CPPFLAGS=\"${CPPFLAGS} -I${SOURCE_DIR}\" CFLAGS=\"${CFLAGS}\" LIBS=\"${LIBS}\" LDFLAGS=\"${LDFLAGS}\"")
set(CFG_OPTS "--host=\"${CHOST}\" --without-hardening --without-stackprotect --disable-etc-default-login --disable-lastlog --with-openssl --with-md5-passwords --with-ssl-engine")
Expand All @@ -44,7 +42,7 @@ ExternalProject_Add(
${PROJECT_NAME}
DOWNLOAD_COMMAND ${CMAKE_COMMAND} -P ${GIT_CLONE_SCRIPT_FILENAME}
BUILD_IN_SOURCE 1
PATCH_COMMAND COMMAND ${PATCH_CMD1} COMMAND ${PATCH_CMD2}
PATCH_COMMAND COMMAND ${PATCH_CMD}
CONFIGURE_COMMAND ${CFG_CMD}
BUILD_COMMAND ${BUILD_CMD}
INSTALL_COMMAND COMMAND ${INSTALL_CMD1} COMMAND ${INSTALL_CMD2} COMMAND ${INSTALL_CMD3}
Expand Down
13 changes: 0 additions & 13 deletions thirdparty/openssh/openssh-7.9_p1-openssl-1.0.2-compat.patch

This file was deleted.

2 changes: 1 addition & 1 deletion thirdparty/openssl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ else()
endif()
# NOTE: Make depend may fail when using ccache, and may fail when // (on some OpenSSL versions, at least)
set(BUILD_CMD1 sh -c "${MAKE_CMD} -j1 depend")
set(BUILD_CMD2 sh -c "${MAKE_CMD} build_libs")
set(BUILD_CMD2 sh -c "${MAKE_CMD} -j${PARALLEL_JOBS} build_libs")

ko_write_gitclone_script(
GIT_CLONE_SCRIPT_FILENAME
Expand Down
2 changes: 1 addition & 1 deletion thirdparty/turbo/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ assert_var_defined(LDFLAGS)

ep_get_source_dir(SOURCE_DIR)

set(BUILD_CMD sh -c "${KO_MAKE_RECURSIVE} CC=\"${CC}\" CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" all")
set(BUILD_CMD sh -c "${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} CC=\"${CC}\" CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\" all")

set(PATCH_CMD sh -c "${ISED} 's|CC=|CC:=|' ${SOURCE_DIR}/Makefile")
if (APPLE AND DEFINED ENV{ANDROID})
Expand Down
4 changes: 2 additions & 2 deletions thirdparty/zlib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ if($ENV{WIN32})
set(BUILD_VARS DESTDIR=${SOURCE_DIR} INCLUDE_PATH=include LIBRARY_PATH=lib BIN_PATH=bin)
set(BUILD_ARGS CC="${CC}" CFLAGS="${CFLAGS}" RC="${CHOST}-windres" SHARED_MODE=1)
# TODO: also use -j for windows?
set(BUILD_CMD ${BUILD_VARS} ${KO_MAKE_RECURSIVE} -f win32/Makefile.gcc ${BUILD_ARGS})
set(BUILD_CMD ${BUILD_VARS} ${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} -f win32/Makefile.gcc ${BUILD_ARGS})
# install
set(INSTALL_CMD ${BUILD_VARS} ${KO_MAKE_RECURSIVE} -f win32/Makefile.gcc ${BUILD_ARGS} install)
set(INSTALL_CMD ${BUILD_VARS} ${KO_MAKE_RECURSIVE} -j${PARALLEL_JOBS} -f win32/Makefile.gcc ${BUILD_ARGS} install)
else()
# configure
set(CFG_ENV_VAR "${CFG_ENV_VAR} CC=\"${CC}\" CFLAGS=\"${CFLAGS}\" LDFLAGS=\"${LDFLAGS}\"")
Expand Down
46 changes: 0 additions & 46 deletions thirdparty/zsync/CMakeLists.txt

This file was deleted.

25 changes: 0 additions & 25 deletions thirdparty/zsync/zsync-android-build-p1.patch

This file was deleted.

Loading

0 comments on commit c258c33

Please sign in to comment.