CC=gcc

all:	bggy1 bggy2 bggy3 bggy4 bggy5

LIBS=-lpthread -ldl

LDFLAGS1=-shared
LDFLAGS2=-Wl,-shared
LDFLAGS3=-Wl,-E
LDFLAGS4=
LDFLAGS5=-Wl,-Bdynamic

bggy%: buggy.c
	echo "Rebuilding $@..."
	$(CC) -o $@ $($(@:bggy%=LDFLAGS%)) $(LIBS) $<
	ldd $@
	echo "The nm output of $@ should ideally not contain any Absolute symbols at address 0x00000000"
	nm -D $@ | grep '\(pthr\|dlop\)'
	echo ""

clean:
	rm -f bggy*
