37c1b750d5
Fixes build failure reported here: http://autobuild.buildroot.net/results/262/26218e028f3d2c77c5192b45154627f08384b688/ uClibc toolchain for ARC doesn't support PIE Attempt to build anything with "-pie" option lead to linker failure: arc-buildroot-linux-uclibc-gcc -pie test.c ld: ../4.8-r3/bin/../arc-buildroot-linux-uclibc/sysroot/usr/lib/crt1.o: warning: unresolvable relocation against symbol `__uClibc_main' from .text section ld: ../4.8-r3/bin/../lib/gcc/arc-buildroot-linux-uclibc/4.8.0/crtbegin.o: warning: unresolvable relocation against symbol `__deregister_frame_info@@GCC_3.0' from .text section ld: ../4.8-r3/bin/../lib/gcc/arc-buildroot-linux-uclibc/4.8.0/crtbegin.o: warning: unresolvable relocation against symbol `__deregister_frame_info@@GCC_3.0' from .text section ld: ../4.8-r3/bin/../lib/gcc/arc-buildroot-linux-uclibc/4.8.0/crtbegin.o: warning: unresolvable relocation against symbol `__register_frame_info@@GCC_3.0' from .text section ld: ../4.8-r3/bin/../lib/gcc/arc-buildroot-linux-uclibc/4.8.0/crtbegin.o: warning: unresolvable relocation against symbol `__register_frame_info@@GCC_3.0' from .text section In its turn this behavior confuses configure script of openssh so some options get set improperly. In particular "strnvis" gets determined as existing which causes failure during compilation: log.c:67:25: error: 'VIS_SAFE' undeclared (first use in this function) #define LOG_STDERR_VIS (VIS_SAFE|VIS_OCTAL) With disabled PIE ("--without-pie") openssh gets built without issues. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Anton Kolesov <akolesov@synopsys.com> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
41 lines
1.2 KiB
Makefile
41 lines
1.2 KiB
Makefile
################################################################################
|
|
#
|
|
# openssh
|
|
#
|
|
################################################################################
|
|
|
|
OPENSSH_VERSION = 6.6p1
|
|
OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable
|
|
OPENSSH_LICENSE = BSD-3c BSD-2c Public Domain
|
|
OPENSSH_LICENSE_FILES = LICENCE
|
|
OPENSSH_CONF_ENV = LD="$(TARGET_CC)" LDFLAGS="$(TARGET_CFLAGS)"
|
|
OPENSSH_CONF_OPT = --disable-lastlog --disable-utmp \
|
|
--disable-utmpx --disable-wtmp --disable-wtmpx --disable-strip
|
|
|
|
# uClibc toolchain for ARC doesn't support PIE at the moment
|
|
ifeq ($(BR2_arc),y)
|
|
OPENSSH_CONF_OPT += --without-pie
|
|
endif
|
|
|
|
OPENSSH_DEPENDENCIES = zlib openssl
|
|
|
|
ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
|
|
OPENSSH_DEPENDENCIES += linux-pam
|
|
OPENSSH_CONF_OPT += --with-pam
|
|
endif
|
|
|
|
define OPENSSH_INSTALL_INIT_SYSTEMD
|
|
$(INSTALL) -D -m 644 package/openssh/sshd.service \
|
|
$(TARGET_DIR)/etc/systemd/system/sshd.service
|
|
mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
|
|
ln -fs ../sshd.service \
|
|
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/sshd.service
|
|
endef
|
|
|
|
define OPENSSH_INSTALL_INIT_SYSV
|
|
$(INSTALL) -D -m 755 package/openssh/S50sshd \
|
|
$(TARGET_DIR)/etc/init.d/S50sshd
|
|
endef
|
|
|
|
$(eval $(autotools-package))
|