80ad88555f
The intention is to improve (and minimize) diffs when dependencies are changed and `make depend' is executed. (1) use `makedepend ... -w 20' (2) `sort -u' the resultant file with some more "magic". (1) makes sure that there is only one dependent file per line, (2) makes lines unique since `makedepend' can output one file many times which is redundant and makes diffs hard to read. This uses 'mv', 'grep', and 'sort' in all FLTK library Makefiles. Image libraries are intentionally left for a later update.
179 lines
6.0 KiB
Makefile
179 lines
6.0 KiB
Makefile
#
|
|
# "$Id$"
|
|
#
|
|
# CAIRO library makefile for the Fast Light Toolkit (FLTK).
|
|
#
|
|
# Copyright 1997-2009 by Easy Software Products.
|
|
#
|
|
# This library is free software. Distribution and use rights are outlined in
|
|
# the file "COPYING" which should have been included with this file. If this
|
|
# file is missing or damaged, see the license at:
|
|
#
|
|
# http://www.fltk.org/COPYING.php
|
|
#
|
|
# Please report all bugs and problems on the following page:
|
|
#
|
|
# http://www.fltk.org/str.php
|
|
#
|
|
|
|
# Note: see ../configure.in and/or ../makeinclude for definition of
|
|
# FL_VERSION (x.y.z), FL_ABI_VERSION (x.y.0), and FL_DSO_VERSION (x.y)
|
|
|
|
FLTKFLAGS = -DFL_LIBRARY
|
|
include ../makeinclude
|
|
|
|
#
|
|
# Object files...
|
|
#
|
|
CAIROCPPFILES = Fl_Cairo.cxx
|
|
CAIROOBJECTS = $(CAIROCPPFILES:.cxx=.o)
|
|
|
|
#
|
|
# Make all of the targets...
|
|
#
|
|
|
|
all: $(CAIROLIBNAME) $(CAIRODSONAME)
|
|
|
|
$(CAIROLIBNAME): $(CAIROOBJECTS)
|
|
echo $(LIBCOMMAND) $@ ...
|
|
$(RM) $@
|
|
$(LIBCOMMAND) $@ $(CAIROOBJECTS)
|
|
$(RANLIB) $@
|
|
|
|
libfltk_cairo.so.$(FL_DSO_VERSION): $(CAIROOBJECTS) ../src/libfltk.so.$(FL_DSO_VERSION)
|
|
echo $(DSOCOMMAND) $@ ...
|
|
$(DSOCOMMAND) $@ $(CAIROOBJECTS) -L../src -lfltk $(CAIROLIBS)
|
|
$(RM) libfltk_cairo.so
|
|
$(LN) $(CAIRODSONAME) libfltk_cairo.so
|
|
|
|
libfltk_cairo.sl.$(FL_DSO_VERSION): $(CAIROOBJECTS) ../src/libfltk.sl.$(FL_DSO_VERSION)
|
|
echo $(DSOCOMMAND) $@ ...
|
|
$(DSOCOMMAND) $@ $(CAIROOBJECTS) -L../src -lfltk $(CAIROLIBS)
|
|
$(RM) libfltk_cairo.sl
|
|
$(LN) libfltk_cairo.sl.$(FL_DSO_VERSION) libfltk_cairo.sl
|
|
|
|
libfltk_cairo.$(FL_DSO_VERSION).dylib: $(CAIROOBJECTS) ../src/libfltk.$(FL_DSO_VERSION).dylib
|
|
echo $(DSOCOMMAND) $@ ...
|
|
$(DSOCOMMAND) $@ \
|
|
-install_name $(libdir)/$@ \
|
|
-current_version $(FL_VERSION) \
|
|
-compatibility_version $(FL_ABI_VERSION) \
|
|
$(CAIROOBJECTS) -L../src $(LDLIBS) $(CAIROLIBS) -lfltk
|
|
$(RM) libfltk_cairo.dylib
|
|
$(LN) libfltk_cairo.$(FL_DSO_VERSION).dylib libfltk_cairo.dylib
|
|
|
|
libfltk_cairo_s.a: $(CAIROOBJECTS)
|
|
echo $(DSOCOMMAND) libfltk_cairo_s.o ...
|
|
$(DSOCOMMAND) libfltk_cairo_s.o $(CAIROOBJECTS)
|
|
echo $(LIBCOMMAND) libfltk_cairo_s.a src/libfltk_cairo_s.o
|
|
$(RM) $@
|
|
$(LIBCOMMAND) src/libfltk_cairo_s.a src/libfltk_cairo_s.o
|
|
$(CHMOD) +x src/libfltk_cairo_s.a
|
|
|
|
|
|
cygfltknox_cairo-$(FL_DSO_VERSION).dll: $(CAIROLIBNAME) ../src/cygfltknox-$(FL_DSO_VERSION).dll
|
|
echo $(DSOCOMMAND) $(CAIROLIBNAME) ...
|
|
$(DSOCOMMAND) $(CAIROLIBNAME) -Wl,--no-whole-archive \
|
|
-Wl,--out-implib=libfltk_cairo.dll.a \
|
|
-L../src -lfltk $(CAIROLIBS) $(LDLIBS)
|
|
|
|
mgwfltknox_cairo-$(FL_DSO_VERSION).dll: $(CAIROLIBNAME) ../src/mgwfltknox-$(FL_DSO_VERSION).dll
|
|
echo $(DSOCOMMAND) $(CAIROLIBNAME) ...
|
|
$(DSOCOMMAND) $(CAIROLIBNAME) -Wl,--no-whole-archive \
|
|
-Wl,--out-implib=libfltk_cairo.dll.a \
|
|
-L../src -lfltk $(CAIROLIBS) $(LDLIBS)
|
|
|
|
#
|
|
# Clean all of the targets and object files...
|
|
#
|
|
|
|
clean:
|
|
-$(RM) *.o *.dll.a core.* *~ *.bak *.bck
|
|
-$(RM) $(CAIROOBJECTS) $(CAIROLIBNAME) $(CAIRODSONAME) \
|
|
libfltk_cairo.so src/libfltk_cairo.sl src/libfltk_cairo.dylib
|
|
|
|
#
|
|
# Install everything...
|
|
#
|
|
|
|
install: $(CAIROLIBNAME) $(CAIRODSONAME)
|
|
echo "Installing libfltk_cairo$(LIBEXT) in $(libdir)..."
|
|
-$(INSTALL_DIR) $(DESTDIR)$(libdir)
|
|
$(INSTALL_LIB) $(CAIROLIBNAME) $(DESTDIR)$(libdir)
|
|
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo.so.$(FL_DSO_VERSION); then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.so*;\
|
|
$(INSTALL_LIB) libfltk_cairo.so.$(FL_DSO_VERSION) $(DESTDIR)$(libdir); \
|
|
$(LN) libfltk_cairo.so.$(FL_DSO_VERSION) $(DESTDIR)$(libdir)/libfltk_cairo.so;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xsrc/libfltk_cairo.sl.$(FL_DSO_VERSION); then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.sl*;\
|
|
$(INSTALL_LIB) libfltk_cairo.sl.$(FL_DSO_VERSION) $(DESTDIR)$(libdir); \
|
|
$(LN) libfltk_cairo.sl.$(FL_DSO_VERSION) $(DESTDIR)$(libdir)/libfltk_cairo.sl;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo.$(FL_DSO_VERSION).dylib; then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.*dylib;\
|
|
$(INSTALL_LIB) libfltk_cairo.$(FL_DSO_VERSION).dylib $(DESTDIR)$(libdir); \
|
|
$(LN) libfltk_cairo.$(FL_DSO_VERSION).dylib $(DESTDIR)$(libdir)/libfltk_cairo.dylib;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo_s.a; then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo_s.a;\
|
|
$(INSTALL_LIB) libfltk_cairo_s.a $(DESTDIR)$(libdir); \
|
|
fi
|
|
if test x$(CAIRODSONAME) = xcygfltknox_cairo-$(FL_DSO_VERSION).dll; then\
|
|
$(RM) $(DESTDIR)$(bindir)/$(CAIRODSONAME); \
|
|
$(INSTALL_LIB) $(CAIRODSONAME) $(DESTDIR)$(bindir); \
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.dll.a;\
|
|
$(INSTALL_LIB) libfltk_cairo.dll.a $(DESTDIR)$(libdir); \
|
|
fi
|
|
if test x$(CAIRODSONAME) = xmgwfltknox_cairo-$(FL_DSO_VERSION).dll; then\
|
|
$(RM) $(DESTDIR)$(bindir)/$(CAIRODSONAME); \
|
|
$(INSTALL_LIB) $(CAIRODSONAME) $(DESTDIR)$(bindir); \
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.dll.a;\
|
|
$(INSTALL_LIB) libfltk_cairo.dll.a $(DESTDIR)$(libdir); \
|
|
fi
|
|
#
|
|
# Uninstall everything...
|
|
#
|
|
|
|
uninstall:
|
|
echo "Uninstalling libfltk_cairo$(LIBEXT) in $(libdir)..."
|
|
if test x$(CAIROLIBNAME) != x; then\
|
|
$(RM) $(DESTDIR)$(libdir)/$(CAIROLIBNAME);\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo.so.$(FL_DSO_VERSION); then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.so*;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo.sl.$(FL_DSO_VERSION); then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.sl*;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo.$(FL_DSO_VERSION).dylib; then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.*dylib;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xlibfltk_cairo_s.a; then\
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo_s.a;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xcygfltknox_cairo-$(FL_DSO_VERSION).dll; then\
|
|
$(RM) $(DESTDIR)$(bindir)/$(CAIRODSONAME); \
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.dll.a;\
|
|
fi
|
|
if test x$(CAIRODSONAME) = xmgwfltknox_cairo-$(FL_DSO_VERSION).dll; then\
|
|
$(RM) $(DESTDIR)$(bindir)/$(CAIRODSONAME); \
|
|
$(RM) $(DESTDIR)$(libdir)/libfltk_cairo.dll.a;\
|
|
fi
|
|
|
|
$(CAIROOBJECTS): ../makeinclude
|
|
|
|
depend: $(CAIROCPPFILES)
|
|
makedepend -Y -I.. -f makedepend -w 20 $(CAIROCPPFILES)
|
|
echo "# DO NOT DELETE THIS LINE -- make depend depends on it." > makedepend.tmp
|
|
echo "" >> makedepend.tmp
|
|
grep '^[a-zA-Z]' makedepend | sort -u >> makedepend.tmp
|
|
mv makedepend.tmp makedepend
|
|
|
|
include makedepend
|
|
|
|
#
|
|
# End of "$Id$".
|
|
#
|