CFLAGS+=-O3 -Wall -fPIE -fno-strict-aliasing CFLAGS+=-Wformat -Wformat=2 -Wconversion -Wimplicit-fallthrough CFLAGS+=-Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 CFLAGS+=-fstack-clash-protection -fstack-protector-strong CFLAGS+=-fstrict-flex-arrays=3 -msse4.2 LDFLAGS+=-lutil -msse4.2 -Wl,-O3,--sort-common,--as-needed,-z,relro,-z,now,--strip-all -pie LDFLAGS+=-Wl,-z,nodlopen -Wl,-z,noexecstack,--no-copy-dt-needed-entries PROG=crc32c PROG_OBJS=crc32c.o .PHONY: clean .MAIN: $(PROG) $(PROG): $(PROG_OBJS) $(CC) -o ${.TARGET} ${.ALLSRC} $(LDFLAGS) %o: $(CC) -o ${.TARGET} -c ${.IMPSRC} clean: rm -f *.o $(PROG)