graphlcd-base/glcdgraphics/Makefile
changeset 4 df6a40031aa5
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/graphlcd-base/glcdgraphics/Makefile	Wed Feb 06 17:32:55 2008 +0000
     1.3 @@ -0,0 +1,68 @@
     1.4 +#
     1.5 +# Makefile for the GraphLCD graphics library
     1.6 +#
     1.7 +
     1.8 +-include ../Make.config
     1.9 +
    1.10 +CXXFLAGS += -fPIC
    1.11 +
    1.12 +VERMAJOR = 2
    1.13 +VERMINOR = 0
    1.14 +VERMICRO = 0
    1.15 +
    1.16 +BASENAME = libglcdgraphics.so
    1.17 +
    1.18 +LIBNAME = $(BASENAME).$(VERMAJOR).$(VERMINOR).$(VERMICRO)
    1.19 +
    1.20 +OBJS = bitmap.o common.o font.o glcd.o image.o imagefile.o pbm.o
    1.21 +
    1.22 +HEADERS = bitmap.h font.h glcd.h image.h imagefile.h pbm.h
    1.23 +
    1.24 +### Implicit rules:
    1.25 +
    1.26 +%.o: %.c
    1.27 +	$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $<
    1.28 +
    1.29 +# Dependencies:
    1.30 +
    1.31 +MAKEDEP = g++ -MM -MG
    1.32 +DEPFILE = .dependencies
    1.33 +$(DEPFILE): Makefile
    1.34 +	@$(MAKEDEP) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
    1.35 +
    1.36 +-include $(DEPFILE)
    1.37 +
    1.38 +ifdef HAVE_FREETYPE2
    1.39 +	ifneq ($(shell which freetype-config),)
    1.40 +		INCLUDES += $(shell freetype-config --cflags)
    1.41 +		LIBS += $(shell freetype-config --libs)
    1.42 +	else
    1.43 +		INCLUDES += -I/usr/include/freetype -I/usr/local/include/freetype
    1.44 +		LIBS += -lfreetype
    1.45 +	endif
    1.46 +	DEFINES += -DHAVE_FREETYPE2
    1.47 +endif### Targets:
    1.48 +
    1.49 +all: $(LIBNAME)
    1.50 +
    1.51 +$(LIBNAME): $(OBJS)
    1.52 +	$(CXX) $(CXXFLAGS) -shared $(OBJS) $(LIBS) -Wl,-soname="$(BASENAME).$(VERMAJOR)" -o $@
    1.53 +	ln -sf $(LIBNAME) $(BASENAME)
    1.54 +
    1.55 +install: all
    1.56 +	install -d $(LIBDIR)
    1.57 +	install -m 755 $(LIBNAME) $(LIBDIR)/
    1.58 +	install -d $(INCDIR)/glcdgraphics
    1.59 +	install -m 644 $(HEADERS) $(INCDIR)/glcdgraphics/
    1.60 +	( cd $(LIBDIR); ln -sf $(LIBNAME) $(BASENAME).$(VERMAJOR); ln -sf $(LIBNAME) $(BASENAME) )
    1.61 +
    1.62 +uninstall:
    1.63 +	rm -f $(LIBDIR)/$(BASENAME)
    1.64 +	rm -f $(LIBDIR)/$(BASENAME).$(VERMAJOR)
    1.65 +	rm -f $(LIBDIR)/$(LIBNAME)
    1.66 +	(for i in $(HEADERS); do rm -f $(INCDIR)/glcdgraphics/$$i; done)
    1.67 +	rmdir $(INCDIR)/glcdgraphics
    1.68 +
    1.69 +clean:
    1.70 +	rm -f $(OBJS) $(DEPFILE) $(LIBNAME) $(BASENAME) *~
    1.71 +