BSYMBOLIC_DEF :=${shell if [ `uname -s` = SunOS ]; then echo "-Bsymbolic"; else echo "-Wl,-Bsymbolic"; fi}
BSYMBOLIC:=${BSYMBOLIC_DEF}
PIC_DEF:=${shell if [ `uname -s` = SunOS ]; then echo ""; else echo -fPIC; fi}
WRITABLE_STRINGS_DEF:=${shell if [ `uname -s` = SunOS ]; then echo ""; else echo -fwritable-strings; fi}
SHARED_DEF:=${shell if [ `uname -s` = SunOS ]; then echo -G; else echo -shared; fi}

test_LDFLAGS = -L. -ldll 

all: clean main libdll.so
	(LD_LIBRARY_PATH=.  ./main)

main: main.o libdll.so
	${CC} $< $(test_LDFLAGS) -o $@

libdll.so: dll.o
	${CC} $(BSYMBOLIC) ${SHARED_DEF} $< -lc -o $@

dll.o: dll.c
	${CC} -c ${PIC_DEF} $< -o $@

clean:
	rm -f dll.o main.o main libdll.so
