YTK_OBJS := display.o shm.o xv.o window.o \
	ytk.o workspace.o softcsp.o draw.o fonts.o \
	cursors.o embedded_font.o
OBJS := $(YTK_OBJS) vidmode.o dga.o glx.o mesh_base.o

# Compiling instructions:
#LINKX =
#	-L/usr/X11R6/lib64 -L/usr/X11R6/lib -lX11 -lXext -lXv
#	-lGL -lXxf86vm -lXxf86dga
#prog: objs.o... YGL2/libytk.a [YGL2/glx.o ...]
#	gcc -o $(@) $(^) $(LINKX)
#YGL2/x.o :
#        cd $(@D); make $(@F)

AR := ar
CC := gcc
CFLAGS := -Wall -O3
DATE := $(shell date +%Y_%m_%d)


.PHONY: all clean dist

all: $(OBJS) libytk.a

clean:
	rm -f libytk.a $(OBJS)

dist:
	cd ..; ls YGL2/*.o > YGL2/Targets.tmp
	echo YGL2/Targets.tmp >> Targets.tmp
	@echo NOTE: Distribution parent in directory
	cd ..; tar -X YGL2/Targets.tmp -czf libYGL2-$(DATE).tar.gz YGL2/
	rm Targets.tmp

libytk.a : $(YTK_OBJS)
	rm -f $(@); $(AR) rcs $(@) $(^)

$(OBJS) : %.o : %.c %.h Makefile
	$(CC) $(CFLAGS) -c -o $(@) $(<)

# helper program used for font data in embedded_font.c
# (only compiles with ../mformat/pnm.o correctly built)
pnm_to_c: pnm_to_c.c
	gcc -Wall -Wl,-s -o $(@) $(<) ../mformat/pnm.o
