[uclibc-ng-devel] [PATCH] utils and enabled UCLIBC_BUILD_SSP

Eugene Yudin e.yudin at ndmsystems.com
Wed Nov 6 17:35:21 CET 2019


Hi Waldemar,

When building with crosstool-ng, the libssp library is compiled at the
final stage of the compiler (after uClibc-ng was built), resulting in the
chicken-and-egg problem with utils. The attached patch fixes the problem by
building utils without stack smashing protector.

    [ALL  ]      mipsel-ndms-linux-uclibc-gcc ../utils/getconf.c  -o
../utils/getconf -Wall -Wstrict-prototypes -Wstrict-aliasing
-Wno-nonnull-compare -funsigned-char -fno-builtin -fno-asm
-fmerge-all-constants -msoft-float -std=gnu99 -mabi=32 -mnan=legacy
 -fstack-protector -nostdinc -I../include -I../include -include
libc-symbols.h -I../libc/sysdeps/linux/mips -I../libc/sysdeps/linux
-I../ldso/ldso/mips -I../ldso/include -I.  -Os -fstrict-aliasing
-mno-split-addresses   -pipe -D__USE_STDIO_FUTEXES__ -DHAVE_FORCED_UNWIND
-D_LIBC_REENTRANT -I../libpthread/nptl -I../libpthread/nptl
 -I../libpthread/nptl/sysdeps/unix/sysv/linux/mips
-I../libpthread/nptl/sysdeps/mips -I../libpthread/nptl/sysdeps/mips
-I../libpthread/nptl/sysdeps/unix/sysv/linux
-I../libpthread/nptl/sysdeps/unix/sysv/linux
-I../libpthread/nptl/sysdeps/pthread
-I../libpthread/nptl/sysdeps/pthread/bits
-I../libpthread/nptl/sysdeps/generic -I../libc/sysdeps/linux/common
-isystem
/home/eugene/Documents/work/cases/13220_toolchain/crosstool-ng/.build/mipsel-ndms-linux-uclibc/buildtools/lib/gcc/mipsel-ndms-linux-uclibc/8.1.0/include-fixed
-isystem
/home/eugene/Documents/work/cases/13220_toolchain/crosstool-ng/.build/mipsel-ndms-linux-uclibc/buildtools/lib/gcc/mipsel-ndms-linux-uclibc/8.1.0/include
-I/home/eugene/x-tools/mipsel-ndms-linux-uclibc/mipsel-ndms-linux-uclibc/sysroot/usr/include/
-DNDEBUG -fstack-protector-all -I../ldso/ldso/mips -I../ldso/include
-DUCLIBC_RUNTIME_PREFIX="/" -DUCLIBC_LDSO="ld-uClibc.so.1"
-I..///home/eugene/x-tools/mipsel-ndms-linux-uclibc/mipsel-ndms-linux-uclibc/sysroot/usr/include/
-DNOT_IN_libc -B../lib -Wl,-rpath-link,../lib -fstack-protector-all
-I../ldso/ldso/mips -I../ldso/include -DUCLIBC_RUNTIME_PREFIX="/"
-DUCLIBC_LDSO="ld-uClibc.so.1"
-I..///home/eugene/x-tools/mipsel-ndms-linux-uclibc/mipsel-ndms-linux-uclibc/sysroot/usr/include/
-DNOT_IN_libc -B../lib -Wl,-rpath-link,../lib
-DGETCONF_DIR='"/home/eugene/Documents/work/cases/13220_toolchain/crosstool-ng/.build/mipsel-ndms-linux-uclibc/build/build-libc-final/multilib/utils"'
-MT ../utils/getconf -MD -MP -MF ../utils/.getconf.dep
    [ALL  ]      ../utils/getconf.c: In function 'main':
    [ALL  ]      ../utils/getconf.c:1238:6: warning: statement will never
be executed [-Wswitch-unreachable]
    [ALL  ]            {
    [ALL  ]            ^
    [ALL  ]
 /home/eugene/Documents/work/cases/13220_toolchain/crosstool-ng/.build/mipsel-ndms-linux-uclibc/buildtools/lib/gcc/mipsel-ndms-linux-uclibc/8.1.0/../../../../mipsel-ndms-linux-uclibc/bin/ld:
cannot find -lssp_nonshared
    [ALL  ]
 /home/eugene/Documents/work/cases/13220_toolchain/crosstool-ng/.build/mipsel-ndms-linux-uclibc/buildtools/lib/gcc/mipsel-ndms-linux-uclibc/8.1.0/../../../../mipsel-ndms-linux-uclibc/bin/ld:
cannot find -lssp
    [ERROR]      collect2: error: ld returned 1 exit status
    [ALL  ]      Makefile.in:114: recipe for target '../utils/getconf'
failed

-- 
Best regards,
Eugene
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.uclibc-ng.org/pipermail/devel/attachments/20191106/3f16e598/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: utils_disable_ssp.patch
Type: text/x-patch
Size: 3522 bytes
Desc: not available
URL: <http://mailman.uclibc-ng.org/pipermail/devel/attachments/20191106/3f16e598/attachment.bin>


More information about the devel mailing list