Unverified Commit 883f4958 authored by tlaurion's avatar tlaurion Committed by GitHub
Browse files

Merge pull request #876 from hardenedvault/cryptsetup-2.3

Upgrade to cryptsetup 2.3 and make cryptsetup1/cryptsetup2 optionals
parents b310fc94 da7f6f73
......@@ -167,7 +167,7 @@ heads_cc := $(CROSS)gcc \
-fdebug-prefix-map=$(pwd)=heads \
-gno-record-gcc-switches \
-D__MUSL__ \
-I$(INSTALL)/include \
-isystem $(INSTALL)/include \
-L$(INSTALL)/lib \
CROSS_TOOLS_NOCC := \
......
modules-$(CONFIG_CRYPTSETUP2) += cryptsetup2
cryptsetup2_depends := util-linux popt lvm2 json-c $(musl_dep)
cryptsetup2_version := 2.3.3
cryptsetup2_dir := cryptsetup-$(cryptsetup2_version)
cryptsetup2_tar := cryptsetup-$(cryptsetup2_version).tar.xz
cryptsetup2_url := https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-$(cryptsetup2_version).tar.xz
cryptsetup2_hash := 3bca4ffe39e2f94cef50f6ea65acb873a6dbce5db34fc6bcefe38b6d095e82df
# Use an empty prefix so that the executables will not include the
# build path.
cryptsetup2_configure := ./configure \
$(CROSS_TOOLS) \
--host i386-elf-linux \
--prefix "/" \
--disable-rpath \
--disable-gcrypt-pbkdf2 \
--enable-cryptsetup-reencrypt \
--with-crypto_backend=kernel \
--with-tmpfilesdir=$(INSTALL)/lib/tmpfiles.d
# but after building, replace prefix so that they will be installed
# in the correct directory.
cryptsetup2_target := \
$(MAKE_JOBS) \
&& $(MAKE) \
-C $(build)/$(cryptsetup2_dir) \
prefix="$(INSTALL)" \
install
cryptsetup2_output := \
.libs/cryptsetup \
.libs/cryptsetup-reencrypt \
.libs/veritysetup \
cryptsetup2_libraries := \
.libs/libcryptsetup.so.12 \
modules-$(CONFIG_CRYPTSETUP2) += json-c
json-c_version := 0.14
json-c_dir := json-c-$(json-c_version)
json-c_tar := json-c-$(json-c_version).tar.gz
json-c_url := https://s3.amazonaws.com/json-c_releases/releases/json-c-$(json-c_version)-nodoc.tar.gz
json-c_hash := 99914e644a25201d82ccefa20430f7515c110923360f9ef46755527c02412afa
# there is a bug in cmake-configure so that it can not be used with a "=", fxed in next
# release though (then it needs to read '--prefix="$(INSTALL)"' here instead
define toolchain_file =
set\(CMAKE_SYSTEM_NAME Linux\)\n\
set\(CMAKE_SYSROOT $(INSTALL)\)\n\
set\(CMAKE_C_COMPILER $(CROSS)gcc\)\n\
set\(CMAKE_AR $(CROSS)ar\)\n\
set\(CMAKE_LINKER $(CROSS)ld\)\n\
set\(CMAKE_NM $(CROSS)nm\)\n\
set\(CMAKE_OBJCOPY $(CROSS)objcopy\)\n\
set\(CMAKE_OBJDUMP $(CROSS)objdump\)\n\
set\(INSTALL_PKGCONFIG_DIR $(INSTALL)/lib/pkgconfig\)\n\
set\(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER\)\n\
set\(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY\)\n\
set\(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY\)\n\
set\(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY\)
endef
json-c_configure := \
echo -e "$(toolchain_file)" | sed 's/\\//g' > toolchain && \
mkdir -p build && \
cd build && \
cmake .. -DCMAKE_INSTALL_PREFIX="$(INSTALL)" -DCMAKE_TOOLCHAIN_FILE=../toolchain
json-c_target := \
$(CROSS_TOOLS) -C $(build)/$(json-c_dir)/build \
all install
json-c_libraries := build/libjson-c.so.5
......@@ -26,11 +26,12 @@ util-linux_target := \
$(MAKE_JOBS) \
$(CROSS_TOOLS) \
DESTDIR="$(INSTALL)" \
install
install && \
rm $(INSTALL)/lib/libblkid.la && \
rm $(INSTALL)/lib/libuuid.la
util-linux_libraries += .libs/libuuid.so.1
# libblkid is not needed by lvm2, so it is not installed now
#util-linux_libraries += .libs/libblkid.so.1
util-linux_libraries += \
.libs/libuuid.so.1 \
.libs/libblkid.so.1 \
util-linux_depends := $(musl_dep)
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment