mirror of
https://github.com/MiyooCFW/buildroot.git
synced 2025-09-27 22:24:19 +03:00
Merge from bittboy/buildroot@26c91a9
This commit is contained in:
61
package/ecryptfs-utils/0003-fix-parallel-build-issue.patch
Normal file
61
package/ecryptfs-utils/0003-fix-parallel-build-issue.patch
Normal file
@@ -0,0 +1,61 @@
|
||||
fix parallel build issue
|
||||
|
||||
Build randomly fails since December 2017 on buildroot
|
||||
(http://autobuild.buildroot.org/?reason=ecryptfs-utils-111):
|
||||
|
||||
make[5]: Entering directory '/home/buildroot/autobuild/instance-2/output-1/build/ecryptfs-utils-111/src/utils'
|
||||
/bin/mkdir -p '/home/buildroot/autobuild/instance-2/output-1/target/sbin'
|
||||
/bin/bash ../../libtool --mode=install /usr/bin/install -c mount.ecryptfs umount.ecryptfs mount.ecryptfs_private '/home/buildroot/autobuild/instance-2/output-1/target/sbin'
|
||||
libtool: install: /usr/bin/install -c mount.ecryptfs /home/buildroot/autobuild/instance-2/output-1/target/sbin/mount.ecryptfs
|
||||
/usr/bin/install: cannot create regular file '/home/buildroot/autobuild/instance-2/output-1/target/sbin/mount.ecryptfs': File exists
|
||||
Makefile:832: recipe for target 'install-rootsbinPROGRAMS' failed
|
||||
make[5]: *** [install-rootsbinPROGRAMS] Error 1
|
||||
|
||||
As spotted by Thomas Petazzoni, build failure happens because of the
|
||||
following line in src/utils/Makefile.am:
|
||||
|
||||
install-exec-hook: install-rootsbinPROGRAMS
|
||||
-rm -f "$(DESTDIR)/$(rootsbindir)/umount.ecryptfs_private"
|
||||
$(LN_S) "mount.ecryptfs_private" "$(DESTDIR)/$(rootsbindir)/umount.ecryptfs_private"
|
||||
|
||||
The install-exec-hook target should not have a dependency on
|
||||
install-rootsbinPROGRAMS.
|
||||
|
||||
From https://www.gnu.org/software/automake/manual/html_node/Extending.html#Extending:
|
||||
|
||||
"""
|
||||
In contrast, some rules also have a way to run another rule, called a
|
||||
hook; hooks are always executed after the main rule’s work is done. The
|
||||
hook is named after the principal target, with ‘-hook’ appended. The
|
||||
targets allowing hooks are install-data, install-exec, uninstall, dist,
|
||||
and distcheck.
|
||||
|
||||
For instance, here is how to create a hard link to an installed program:
|
||||
|
||||
install-exec-hook:
|
||||
ln $(DESTDIR)$(bindir)/program$(EXEEXT) \
|
||||
$(DESTDIR)$(bindir)/proglink$(EXEEXT)
|
||||
|
||||
"""
|
||||
|
||||
So, they explicitly say that these hooks are run after the main rule
|
||||
work is done, which means the dependency on install-rootsbinPROGRAMS is
|
||||
not needed. And the example they use to illustrate is *exactly* the
|
||||
situation of ecryptfs-utils: creating a link to a program that was
|
||||
installed.
|
||||
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
[Upstream status: https://bugs.launchpad.net/ecryptfs/+bug/1857622]
|
||||
|
||||
diff -Nuar ecryptfs-utils-111-orig/src/utils/Makefile.in ecryptfs-utils-111/src/utils/Makefile.in
|
||||
--- ecryptfs-utils-111-orig/src/utils/Makefile.in 2019-12-26 15:14:16.656146065 +0100
|
||||
+++ ecryptfs-utils-111/src/utils/Makefile.in 2019-12-26 17:36:07.108496164 +0100
|
||||
@@ -1522,7 +1522,7 @@
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
-install-exec-hook: install-rootsbinPROGRAMS
|
||||
+install-exec-hook:
|
||||
-rm -f "$(DESTDIR)/$(rootsbindir)/umount.ecryptfs_private"
|
||||
$(LN_S) "mount.ecryptfs_private" "$(DESTDIR)/$(rootsbindir)/umount.ecryptfs_private"
|
||||
|
||||
@@ -28,7 +28,7 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
|
||||
|
||||
http://ecryptfs.org
|
||||
|
||||
comment "ecryptfs-utils needs a toolchain w/ threads, wchar, dynami library"
|
||||
comment "ecryptfs-utils needs a toolchain w/ threads, wchar, dynamic library"
|
||||
depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
|
||||
|
||||
@@ -2,3 +2,4 @@
|
||||
md5 83513228984f671930752c3518cac6fd ecryptfs-utils_111.orig.tar.gz
|
||||
# Locally computed
|
||||
sha256 112cb3e37e81a1ecd8e39516725dec0ce55c5f3df6284e0f4cc0f118750a987f ecryptfs-utils_111.orig.tar.gz
|
||||
sha256 91df39d1816bfb17a4dda2d3d2c83b1f6f2d38d53e53e41e8f97ad5ac46a0cad COPYING
|
||||
|
||||
@@ -11,13 +11,21 @@ ECRYPTFS_UTILS_LICENSE = GPL-2.0+
|
||||
ECRYPTFS_UTILS_LICENSE_FILES = COPYING
|
||||
|
||||
ECRYPTFS_UTILS_DEPENDENCIES = keyutils libnss host-intltool
|
||||
ECRYPTFS_UTILS_CONF_OPTS = --disable-pywrap --disable-pam
|
||||
ECRYPTFS_UTILS_CONF_OPTS = --disable-pywrap
|
||||
|
||||
#Needed for build system to find pk11func.h and libnss3.so
|
||||
ECRYPTFS_UTILS_CONF_ENV = \
|
||||
ac_cv_path_POD2MAN=true \
|
||||
NSS_CFLAGS="-I$(STAGING_DIR)/usr/include/nss -I$(STAGING_DIR)/usr/include/nspr" \
|
||||
NSS_LIBS="-lnss3"
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
|
||||
ECRYPTFS_UTILS_CONF_OPTS += --enable-pam
|
||||
ECRYPTFS_UTILS_DEPENDENCIES += linux-pam
|
||||
else
|
||||
ECRYPTFS_UTILS_CONF_OPTS += --disable-pam
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
||||
ECRYPTFS_UTILS_CONF_OPTS += --enable-openssl
|
||||
ECRYPTFS_UTILS_DEPENDENCIES += openssl
|
||||
|
||||
Reference in New Issue
Block a user