mirror of
https://github.com/linuxboot/heads.git
synced 2024-12-19 21:17:55 +00:00
d7915e1639
hardcode VERSION='reproducible_build' into generated configure script to get rid of generate random git abbrev 8/12 chars (could not find source) patches/openssl-3.0.8.patch: clean up tpm2-tools/tpm2-tss: hack configure scripts to not contain hardcoded libs and other rpath related strings, using sed instead of patching configure script like cryptsetup2 patch Will be clened up in other commits. Leaving here as trace for autotools sed patching for reproducible builds. CircleCI: change working dir from project->heads so that CircleCI and local builds are from heads directory, helping reproducible builds TODO: change other patches a well and generalize to gpg toolstack, removing patches that are a maintainership burden. Signed-off-by: Thierry Laurion <insurgo@riseup.net>
60 lines
2.6 KiB
Makefile
60 lines
2.6 KiB
Makefile
# TPM2 TSS library
|
|
modules-$(CONFIG_TPM2_TSS) += tpm2-tss
|
|
|
|
tpm2-tss_version := 3.2.0
|
|
tpm2-tss_dir := tpm2-tss-$(tpm2-tss_version)
|
|
tpm2-tss_tar := tpm2-tss-$(tpm2-tss_version).tar.gz
|
|
tpm2-tss_url := https://github.com/tpm2-software/tpm2-tss/releases/download/$(tpm2-tss_version)/$(tpm2-tss_tar)
|
|
tpm2-tss_hash := 48305e4144dcf6d10f3b25b7bccf0189fd2d1186feafd8cd68c6b17ecf0d7912
|
|
|
|
tpm2-tss_configure := aclocal && automake --add-missing && autoreconf -fi \
|
|
&& sed -i 's/hardcode_direct=yes/hardcode_direct=no/g' configure \
|
|
&& sed -i 's/hardcode_libdir_flag_spec=.*/hardcode_libdir_flag_spec=" "/' configure \
|
|
&& sed -i 's/hardcode_minus_L=yes/hardcode_minus_L=no/g' configure \
|
|
&& sed -i 's/hardcode_direct_absolute=yes/hardcode_direct_absolute=no/g' configure \
|
|
&& sed -i 's/hardcode_into_libs=yes/hardcode_into_libs=no/g' configure \
|
|
&& sed -i 's/hardcode_libdir_flag_spec_CXX=.*/hardcode_libdir_flag_spec_CXX=" "/' configure \
|
|
&& sed -i 's/hardcode_automatic=yes/hardcode_automatic=no/g' configure \
|
|
&& sed -i 's/hardcode_runpath_var=yes/hardcode_runpath_var=no/g' configure \
|
|
&& sed -i 's/hardcode_direct_CXX=yes/hardcode_direct_CXX=no/g' configure \
|
|
&& sed -i 's/hardcode_direct_absolute_CXX=yes/hardcode_direct_absolute_CXX=no/g' configure \
|
|
&& sed -i 's/hardcode_minus_L_CXX=yes/hardcode_minus_L_CXX=no/g' configure \
|
|
&& sed -i 's/hardcode_automatic_CXX=yes/hardcode_automatic_CXX=no/g' configure \
|
|
&& sed -i 's/inherit_rpath=yes/inherit_rpath=no/g' configure \
|
|
&& sed -i 's/inherit_rpath_CXX=yes/inherit_rpath_CXX=no/g' configure \
|
|
&& ./configure \
|
|
$(CROSS_TOOLS) \
|
|
--host $(MUSL_ARCH)-elf-linux \
|
|
--prefix "/" \
|
|
--disable-doxygen-doc \
|
|
--disable-doxygen-man \
|
|
--disable-doxygen-rtf \
|
|
--disable-doxygen-html \
|
|
--disable-fapi \
|
|
|
|
# Run one build to generate the executables with the pre-defined
|
|
# exec_prefix and datarootdir, then a second make to install the binaries
|
|
# into our actual target location
|
|
|
|
tpm2-tss_target := $(MAKE_JOBS) \
|
|
DESTDIR="$(INSTALL)" \
|
|
$(CROSS_TOOLS) \
|
|
install \
|
|
|
|
# tpm2 binary wants to dlopen some libraries, so be sure that
|
|
# they are available. It would be nice to statically link these.
|
|
tpm2-tss_libraries := \
|
|
src/tss2-rc/.libs/libtss2-rc.so.0 \
|
|
src/tss2-mu/.libs/libtss2-mu.so.0 \
|
|
src/tss2-sys/.libs/libtss2-sys.so.1 \
|
|
src/tss2-esys/.libs/libtss2-esys.so.0 \
|
|
src/tss2-tcti/.libs/libtss2-tctildr.so.0 \
|
|
src/tss2-tcti/.libs/libtss2-tcti-device.so.0 \
|
|
|
|
# The pcap TCTI driver is only included if enabled in the board config.
|
|
ifeq "$(CONFIG_TPM2_CAPTURE_PCAP)" "y"
|
|
tpm2-tss_libraries += src/tss2-tcti/.libs/libtss2-tcti-pcap.so.0
|
|
endif
|
|
|
|
tpm2-tss_depends := openssl $(musl_dep)
|