162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ciCFLAGS = -Wall 362306a36Sopenharmony_ciCFLAGS += -Wno-nonnull 462306a36Sopenharmony_ciCFLAGS += -D_GNU_SOURCE 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciTEST_PROGS := binfmt_script.py 762306a36Sopenharmony_ciTEST_GEN_PROGS := execveat load_address_4096 load_address_2097152 load_address_16777216 non-regular 862306a36Sopenharmony_ciTEST_GEN_FILES := execveat.symlink execveat.denatured script subdir 962306a36Sopenharmony_ci# Makefile is a run-time dependency, since it's accessed by the execveat test 1062306a36Sopenharmony_ciTEST_FILES := Makefile 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciTEST_GEN_PROGS += recursion-depth 1362306a36Sopenharmony_ciTEST_GEN_PROGS += null-argv 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciEXTRA_CLEAN := $(OUTPUT)/subdir.moved $(OUTPUT)/execveat.moved $(OUTPUT)/xxxxx* \ 1662306a36Sopenharmony_ci $(OUTPUT)/S_I*.test 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciinclude ../lib.mk 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci$(OUTPUT)/subdir: 2162306a36Sopenharmony_ci mkdir -p $@ 2262306a36Sopenharmony_ci$(OUTPUT)/script: 2362306a36Sopenharmony_ci echo '#!/bin/sh' > $@ 2462306a36Sopenharmony_ci echo 'exit $$*' >> $@ 2562306a36Sopenharmony_ci chmod +x $@ 2662306a36Sopenharmony_ci$(OUTPUT)/execveat.symlink: $(OUTPUT)/execveat 2762306a36Sopenharmony_ci cd $(OUTPUT) && ln -s -f $(shell basename $<) $(shell basename $@) 2862306a36Sopenharmony_ci$(OUTPUT)/execveat.denatured: $(OUTPUT)/execveat 2962306a36Sopenharmony_ci cp $< $@ 3062306a36Sopenharmony_ci chmod -x $@ 3162306a36Sopenharmony_ci$(OUTPUT)/load_address_4096: load_address.c 3262306a36Sopenharmony_ci $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000 -pie -static $< -o $@ 3362306a36Sopenharmony_ci$(OUTPUT)/load_address_2097152: load_address.c 3462306a36Sopenharmony_ci $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x200000 -pie -static $< -o $@ 3562306a36Sopenharmony_ci$(OUTPUT)/load_address_16777216: load_address.c 3662306a36Sopenharmony_ci $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000000 -pie -static $< -o $@ 37