the bitrig master branch has been updated by drahn with 11 new commits: commit 5c2614868a8c9aa7a6d227c004483806cce5e937 diff: https://github.com/bitrig/bitrig/commit/5c26148 author: Dale Rahn <[email protected]> date: Wed Aug 19 15:25:40 2015 -0400
Add rcrt0.o for static pie, also sort. M distrib/sets/lists/comp/mi commit efea06ac3f78cc3824f528cfd1a8b3baa75248ca diff: https://github.com/bitrig/bitrig/commit/efea06a author: Dale Rahn <[email protected]> date: Wed Aug 19 15:07:23 2015 -0400 Rework/fixup ramdisk creation to be compatible with pie changes. M distrib/special/Makefile A distrib/special/bioctl/Makefile A distrib/special/cat/Makefile A distrib/special/chmod/Makefile A distrib/special/cp/Makefile A distrib/special/df/Makefile A distrib/special/disklabel/Makefile A distrib/special/encrypt/Makefile A distrib/special/fdisk/Makefile A distrib/special/fsck/Makefile A distrib/special/fsck_ext2fs/Makefile A distrib/special/fsck_ffs/Makefile A distrib/special/fsck_msdos/Makefile A distrib/special/ftp/Makefile A distrib/special/hostname/Makefile A distrib/special/ksh/Makefile A distrib/special/ln/Makefile A distrib/special/ls/Makefile A distrib/special/mkdir/Makefile A distrib/special/mknod/Makefile A distrib/special/mkuboot/Makefile A distrib/special/mount/Makefile A distrib/special/mount_cd9660/Makefile A distrib/special/mount_ext2fs/Makefile A distrib/special/mount_ffs/Makefile A distrib/special/mount_msdos/Makefile A distrib/special/mount_nfs/Makefile A distrib/special/mount_udf/Makefile A distrib/special/mv/Makefile A distrib/special/newfs_ext2fs/Makefile A distrib/special/newfs_msdos/Makefile A distrib/special/ping6/Makefile A distrib/special/reboot/Makefile A distrib/special/rm/Makefile A distrib/special/route/Makefile A distrib/special/sleep/Makefile A distrib/special/stty/Makefile A distrib/special/sync/Makefile M usr.sbin/crunchgen/crunchgen.c commit 6f0dd56ef2b814c53848588e5f653f9e632d626c diff: https://github.com/bitrig/bitrig/commit/6f0dd56 author: Dale Rahn <[email protected]> date: Tue Aug 18 18:47:23 2015 -0400 Static PIE is supported, no need to force LDSTATIC binaries nopie M share/mk/bsd.prog.mk commit 4bffec6a8901573e0c6361d82fb24822b5363019 diff: https://github.com/bitrig/bitrig/commit/4bffec6 author: Patrick Wildt <[email protected]> date: Mon Aug 3 21:51:54 2015 +0200 amd64 has moved to PIE. M UPDATING commit acdae311b53cbba4c56be4ef86337e1b9e5ed4f8 diff: https://github.com/bitrig/bitrig/commit/acdae31 author: Dale Rahn <[email protected]> date: Fri Aug 7 16:33:19 2015 -0400 '-fPIE' isn't good enough for TLS variables. The reason this is needed is not yet understood, but allows static PIE binaries to build. M lib/libc/Makefile M lib/libc/locale/Makefile.inc commit 78a3601298bc001d084d495599a8ad4a25ca05a5 diff: https://github.com/bitrig/bitrig/commit/78a3601 author: Dale Rahn <[email protected]> date: Fri Aug 7 13:42:52 2015 -0400 init_tcb code needs to be run in PIE mode. This is in addition to the normal static mode. Since PIE also defines PIC, adjust the flags tested. M lib/csu/crt0.c M lib/libc/dlfcn/tls2_stubs.c commit ebc9e5d6899e09aaa7084940e61a8126223ab8a3 diff: https://github.com/bitrig/bitrig/commit/ebc9e5d author: Dale Rahn <[email protected]> date: Fri Aug 7 12:47:03 2015 -0400 Link static pie binaries against rcrt0.o M contrib/llvm/tools/clang/lib/Driver/Tools.cpp commit d607e2be4100fa8570129f60e081295ec2fe8436 diff: https://github.com/bitrig/bitrig/commit/d607e2b author: Dale Rahn <[email protected]> date: Wed Aug 5 19:36:45 2015 -0400 PIE support for static binaries. significantly borrowed from OpenBSD. The pie linker has to be able to deal with TLS entries which does not make sense in ld.so itself so mdreloc.h was added instead of reusing ld.so components. M lib/csu/Makefile M lib/csu/amd64/md_init.h A lib/csu/amd64/mdreloc.h A lib/csu/boot.h M lib/csu/crt0.c commit 3b32ab84995e36cb6b0f3ad6dc4951051550f2a9 diff: https://github.com/bitrig/bitrig/commit/3b32ab8 author: Dale Rahn <[email protected]> date: Fri Aug 7 17:43:32 2015 -0400 Changes to elf exec loader to load static PIE binaries Just need phdr, not an interpreter, if the file is dynamic. If the phdr is present, load the exe_base as interp. Changes primarily from OpenBSD. M sys/kern/exec_elf.c commit af51b5129ab63562d4b8cb81d31c8d0d454539fa diff: https://github.com/bitrig/bitrig/commit/af51b51 author: Patrick Wildt <[email protected]> date: Mon Aug 3 20:02:30 2015 +0200 Clang changes for PIE on Bitrig. Pass nopie to gnu LD when not building in PIE mode. Default to pie enabled for amd64. Automatically set IsPICLevelTwo for potential Bitrig processors. M contrib/llvm/tools/clang/lib/Driver/ToolChains.h M contrib/llvm/tools/clang/lib/Driver/Tools.cpp commit ae8241db425d1b6732bdb42f03e33f85861b81f2 diff: https://github.com/bitrig/bitrig/commit/ae8241d author: Patrick Wildt <[email protected]> date: Mon Apr 14 23:20:01 2014 +0200 amd64 is pie now. M share/mk/bsd.own.mk
