[CRIU] [PATCH 05/23] Makefiles: move -Wa, --noexecstack out of CFLAGS
Pavel Emelyanov
xemul at virtuozzo.com
Thu Oct 13 05:19:27 PDT 2016
On 10/12/2016 04:46 AM, Kir Kolyshkin wrote:
> The problem is, -Wa is a flag for assembler, but CFLAGS are also used
> to generate dependencies, and clang complains loudly when it is used
> for deps:
>
>> DEP compel/arch/x86/plugins/std/syscalls-64.d
>> clang-3.8: error: argument unused during compilation:
>> '-Wa,--noexecstack'
>
> This patch moved the noexecflag from assembler to linker. I am not
> 100% sure but the end result seems to be the same.
Cyrill, Dima what would you say?
> This fixes dependency generation when using clang instead of gcc.
>
> Signed-off-by: Kir Kolyshkin <kir at openvz.org>
> ---
> compel/plugins/Makefile | 3 ++-
> criu/pie/Makefile.library | 3 ++-
> lib/c/Makefile | 3 ++-
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/compel/plugins/Makefile b/compel/plugins/Makefile
> index 09587d1..ac54f7c 100644
> --- a/compel/plugins/Makefile
> +++ b/compel/plugins/Makefile
> @@ -22,9 +22,10 @@ asflags-y += -iquote $(PLUGIN_ARCH_DIR)/include
> asflags-y += -iquote $(PLUGIN_ARCH_DIR)
>
> # General flags for assembly
> -asflags-y += -fpie -Wstrict-prototypes -Wa,--noexecstack
> +asflags-y += -fpie -Wstrict-prototypes
> asflags-y += -D__ASSEMBLY__ -nostdlib -fomit-frame-pointer
> asflags-y += -fno-stack-protector
> +ldflags-y += -z noexecstack
>
> #
> # Fds plugin
> diff --git a/criu/pie/Makefile.library b/criu/pie/Makefile.library
> index c00877f..ea72c28 100644
> --- a/criu/pie/Makefile.library
> +++ b/criu/pie/Makefile.library
> @@ -1,7 +1,8 @@
> target := native
>
> CFLAGS := $(filter-out -DCONFIG_X86_64,$(CFLAGS))
> -CFLAGS += -Wa,--noexecstack -fno-stack-protector -DCR_NOGLIBC
> +CFLAGS += -fno-stack-protector -DCR_NOGLIBC
> +LDFLAGS += -z noexecstack
>
> CFLAGS_native += -fpie
>
> diff --git a/lib/c/Makefile b/lib/c/Makefile
> index 21bf856..68cf2b9 100644
> --- a/lib/c/Makefile
> +++ b/lib/c/Makefile
> @@ -4,4 +4,5 @@ obj-y += $(SRC_DIR)/images/rpc.pb-c.o
> ccflags-y += -iquote $(SRC_DIR)/criu/$(ARCH_DIR)/include
> ccflags-y += -iquote $(SRC_DIR)/criu/include -iquote $(obj)/..
> ccflags-y += -iquote $(SRC_DIR)/images
> -ccflags-y += -fPIC -Wa,--noexecstack -fno-stack-protector
> +ccflags-y += -fPIC -fno-stack-protector
> +ldflags-y += -z noexecstack
>
More information about the CRIU
mailing list